Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб2.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
815 Кб
Скачать
☆

4. Складання сценарію діалогу пк з користувачем Введіть:x1,y1,x2,y2,x3,y3,щоб отримати ab,ad,bc та висоту ha і бісектрису Wc.

5. Складання програми

#include<stdio.h>

#include<conio.h>

#include<math.h>

int main(){

clrscr();

int x1,y1,x2,y2,x3,y3;

float ab,ac,bc,a,b,c,ha,p,i,bs;

printf("X1=");

scanf("%d",&x1);

printf("Y1=");

scanf("%d",&y1);

printf("X2=");

scanf("%d",&x2);

printf("Y2=");

scanf("%d",&y2);

printf("X3=");

scanf("%d",&x3);

printf("Y3=");

scanf("%d",&y3);

a=pow(x2-x3,2)+pow(y2-y3,2);

ab=sqrt(a);

b=pow(x3-x1,2)+pow(y3-y1,2);

ac=sqrt(b);

c=pow(x1-x2,2)+pow(y1-y2,2);

bc=sqrt(c);

p=(ab+ac+bc)/2;

i=sqrt(p*(p-ab)*(p-ac)*(p-bc));

ha=2*i/ab;

printf("\nHa=%f",ha);

bs=(sqrt((ab*ac)*(ac+ab+bc)*(ac+ab-bc)))/(ab+ac);

printf("\nBis=%f",bs);

getch();}

6.  Відлагодження

Помилок не знайдено!

7.  Тестування програми.

Висновок: Я навчився розробляти та описувати лінійні програми.

  1. Лабораторна робота №5

Тема: Створення та реалізація програм із розгалуженням.

Дидактична мета заняття: Набути уміння та навички розробки та описання програм з розгалуженням.

Розвиваюча мета заняття: Розвивати творчість та культуру написання програм. Розвивати логічне мислення, увагу, уяву, кмітливість.

Виховна мета заняття: Виховувати охайність, культуру спілкування, ввічливість , дисциплінованість, наполегливість у навчанні, дбайливе ставлення до програмного забезпечення та ПК.

  II.  Хід виконання роботи

1.  Постановка задачі.

Варіант№5.На площині задані своїми координатами дві точки: Знайти відстань від початку координат до дальшої точки.

2.  Побудова математичної моделі

ab=xa*xa+ya*ya;

a=sqrt(ab);

bc=xb*xb+yb*yb;

b=sqrt(bc);

3.  Побудова алгоритму

Початок

xa,xb,ya,yb

ab=xa*xa+ya*ya;

a=sqrt(ab);

bc=xb*xb+yb*yb;

b=sqrt(bc);

A>B

A==B

a,xa,ya

Vonu pirno viddaleni

b,xb,yb

Кінець

4.  Складання сценарію діалогу ПК з користувачем

Користувач вводить 2 точки з координатами,якщо xa,ya більше чим xb,yb то програма виводить xa,ya,а якщо вони менші за xa,ya то xb,yb.

5.  Складання програми

#include <stdio.h>

#include <conio.h>

#include <math.h>

void main(){

clrscr();

int xa,xb,ya,yb;

float ab,bc,a,b;

printf("xa=");

scanf ("%d",&xa);

printf ("ya=");

scanf ("%d",&ya);

printf("xb=");

scanf ("%d",&xb);

printf ("yb=");

scanf ("%d",&yb);

ab=xa*xa+ya*ya;

a=sqrt(ab);

bc=xb*xb+yb*yb;

b=sqrt(bc);

if (a>b)

printf("1)Vidstan do dalnoi tochki: %f, \nTochka z koordinatamu %d,%d",a,xa,ya);

else{ if(a==b)

printf("Vonu pirno viddaleni");

else

printf("2)Vidstan do dalnoi tochki: %f, \nTochka z koordinatamu %d,%d",b,xb,yb);

}

getch();}

6.  Відлагодження Помилок при роботі програми не було найдено.

7.  Тестування програми.

Висновок:Я набув уміння та навички розробки та описання програм з розгалуженням.

  1. Лабораторна робота №6

Тема: Створення та реалізація програм із розгалуженням.

Дидактична мета заняття: Набути уміння та навички розробки та описання програм з розгалуженням.

Розвиваюча мета заняття: Розвивати творчість та культуру написання програм. Розвивати логічне мислення, увагу, уяву, кмітливість.

Виховна мета заняття: Виховувати охайність, культуру спілкування, ввічливість , дисциплінованість, наполегливість у навчанні, дбайливе ставлення до програмного забезпечення та ПК.

  1. Постановка задачі.

Варіант№5.

 

  , 

2.  Побудова математичної моделі

k=x*x*x-b*b;

g=1.0/3.0;

x1=fabs(x);

b=(log(fabs(b+3))/log(5))*tan(x*x-exp(g));

y=13.4*sin(-1.26*x)*cos(fabs(x/7.5));

a=cos(x-a)*pow(k,g);

y=(fabs(cos(x*x-3.8)))/4.5-9.7*sin(x-3.1)

Початок

3.  Побудова алгоритму

X, a0, b0

k=x*x*x-b*b;

g=1.0/3.0;

x1=fabs(x);

X1<3.42

b=(log(fabs(b+3))/log(5))*tan(x*x-exp(g));

y=13.4*sin(-1.26*x)*cos(fabs(x/7.5));

a=cos(x-a)*pow(k,g);

y=(fabs(cos(x*x-3.8)))/4.5-9.7*sin(x-3.1)

y

Кінець

4.  Складання сценарію діалогу ПК з користувачем

Користувач вводить довільне значення x а программа виводить y.

5.  Складання програми

#include<stdio.h>

#include<conio.h>

#include<math.h>

#include<stdlib.h>

int main(){

clrscr();

float k,g,x,x1,a0,b0,b,y,a;

printf("Vvedit X: ");

scanf("%f",&x);

k=x*x*x-b*b;

g=1.0/3.0;

x1=fabs(x);

if(x1<3.42){b=(log(fabs(b+3))/log(5))*tan(x*x-exp(g));

y=13.4*sin(-1.26*x)*cos(fabs(x/7.5));}

else{a=cos(x-a)*pow(k,g);

y=(fabs(cos(x*x-3.8)))/4.5-9.7*sin(x-3.1);}

printf("y=%f",y);

getch();

}

6.  Відлагодження

Помилок при роботі програми не було знайдено.

7.  Тестування програми.

Висновок:Я навчився створювати та реалізувати програму із розгалуженням.

  1. Лабораторна робота №7

Тема: Команда вибору та команда без умовного переходу.

Дидактична мета заняття: Набути уміння та навички розробки та описання програм з командою вибору та командою без умовного переходу.

Розвиваюча мета заняття: Розвивати творчість та культуру написання програм. Розвивати логічне мислення, увагу, уяву, кмітливість.

Виховна мета заняття: Виховувати охайність, культуру спілкування, ввічливість , дисциплінованість, наполегливість у навчанні, дбайливе ставлення до програмного забезпечення та ПК.

1.  Постановка задачі.

Варіант№5.

2.  Побудова математичної моделі

i=(fabs(cos(x*x-3.8)))/4.5-9.7*sin(x-3.1);

i=13.4*sin(-1.26*x)*cos(fabs(x/7.5));

i=2*sin(fabs(2*x))*cos(2*x)-11.6*sin(x/0.4-1);

3.  Побудова алгоритму

Початок

z

JOB

default:

x=15;

i=2*sin(fabs(2*x))*cos(2*x)-11.6*sin(2/0.4-1);

z=329*fabs(i+235.5);break;

x=10;

i=13.4*sin(-1.26*x)*cos(fabs(x/7.5));

z=199*fabs(i+123);break;

x=5;

i=(fabs(cos(x*x-3.8)))/4.5-9.7*sin(x-3.1);

z=999*fabs(i+135);break;

A

C

B

Початок

4.  Складання сценарію діалогу ПК з користувачем

Користувач вводить тип роботи,а система виводить оплату.

5.  Складання програми

#include<stdio.h>

#include<conio.h>

#include<math.h>

int main(){

clrscr();

char job;

float x,i,z;

gg:

printf("Vvedit tup robotu:(a,b,c)");

scanf("%c",&job);

switch(job){

case('a'):

x=5;

i=(fabs(cos(x*x-3.8)))/4.5-9.7*sin(x-3.1);

z=999*fabs(i+135);break;

case('b'):

x=10;

i=13.4*sin(-1.26*x)*cos(fabs(x/7.5));

z=199*fabs(i+123);break;

case('c'):

x=15;

i=2*sin(fabs(2*x))*cos(2*x)-11.6*sin(2/0.4-1);

z=329*fabs(i+235.5);break;

default:

fflush(stdin);

printf("Tolko bykvu!\n");

goto gg;}

printf("Zarplata=%.0f",z);

getch();}

6.  Відлагодження

Помилок при роботі програми не було знайдено.

7.  Тестування програми.

  1. Лабораторна робота №8

Тема: Цикли. Таблиця мір.

Дидактична мета заняття: Набути уміння та навички розробки та описання програм з циклами.

Розвиваюча мета заняття: Розвивати творчість та культуру написання програм. Розвивати логічне мислення, увагу, уяву, кмітливість.

Виховна мета заняття: Виховувати охайність, культуру спілкування, ввічливість , дисциплінованість, наполегливість у навчанні, дбайливе ставлення до програмного забезпечення та ПК.

  1. Постановка задачі.

Варіант№5. 1 фут = 0.3048 м = 12 дюймів;

2.  Побудова математичної моделі

for(i=val;i<=fut;i+=krok)

metr=i*0.3048;

duym=i*12;

3.  Побудова алгоритму

i=val;i<=fut;i+=krok

Кінець

i,metr,duym

metr=i*0.3048;

duym=i*12;

val,krok, fut

Початок

4.  Складання сценарію діалогу ПК з користувачем

Користувач вводить кількість,всього елементів і діапазон.

5.  Складання програми

#include<stdio.h>

#include<conio.h>

#include<math.h>

int main(){

clrscr();

float val,krok,metr,duym,i;

int fut;

printf("Vvedit value: ");

scanf("%f",&val);

printf("Vvedit krok zminy: ");

scanf("%f",&krok);

printf("Vvedit number: ");

scanf("%d",&fut);

printf("Fut:\tMetr:\tDuym:");

for(i=val;i<=fut;i+=krok){

metr=i*0.3048;

duym=i*12;

printf("\n");

printf("%1.4f\t%1.4f\t%1.4f",i,metr,duym);}

getch();}

6.  Відлагодження

Помилок при роботі програми не було знайдено.

7.  Тестування програми.

Висноковк:Я набув уміння та навички розробки програм з циклами.

  1. Лабораторна робота №9

Тема: Цикли. Обчислення скінченних сум.

Дидактична мета заняття: Набути уміння та навички розробки та описання програм з циклами.

Розвиваюча мета заняття: Розвивати творчість та культуру написання програм. Розвивати логічне мислення, увагу, уяву, кмітливість.

Виховна мета заняття: Виховувати охайність, культуру спілкування, ввічливість , дисциплінованість, наполегливість у навчанні, дбайливе ставлення до програмного забезпечення та ПК.

  1. Постановка задачі.

Варіант№5.

2.  Побудова математичної моделі

ch=a*x;

suma=1+x*a;

ch=ch*(a-(i-1))*x;

znam=factorial(i);

suma=suma+ch/znam;

3.  Побудова алгоритму

i=2;i<n;i++

x,a

Кінець

Suma, v

ch=ch*(a-(i-1))*x;

znam=factorial(i);

suma=suma+ch/znam;

v=pow(1+x,-1.0/3.0);

ch=a*x;

suma=1+x*a;

Початок

4.  Складання сценарію діалогу ПК з користувачем

Користувач вводить X,N а програма виводить данні в діапазоні.

5.  Складання програми

#include<stdio.h>

#include<conio.h>

#include<math.h>

#include<stdlib.h>

float factorial (int n){

float i;

for(i=1;n>1;i*=(n--));

return i;}

void main(){

clrscr();

int i;

float x,a=-1/3.0,ch,suma,znam,n,v;

printf("X:");

scanf("%f",&x);

printf("N:");

scanf("%f",&n);

v=pow(1+x,-1.0/3.0);

ch=a*x;

suma=1+x*a;

for(i=2;i<n;i++){

ch=ch*(a-(i-1))*x;

znam=factorial(i);

suma=suma+ch/znam;

}

printf("%f\n",suma);

printf("Pravilna:%f\n",v);

getch();

}

6.  Відлагодження

Помилок при роботі програми не було знайдено.

7.  Тестування програми.

  1. Лабораторна робота №10

Тема: Обчислення суми ряду.

Дидактична мета заняття: Набути уміння та навички розробки та описання програм з циклами. Знайомство з ітераційними процесами.

Розвиваюча мета заняття: Розвивати творчість та культуру написання програм. Розвивати логічне мислення, увагу, уяву, кмітливість.

Виховна мета заняття: Виховувати охайність, культуру спілкування, ввічливість , дисциплінованість, наполегливість у навчанні, дбайливе ставлення до програмного забезпечення та ПК.

  1. Постановка задачі.

2.  Побудова математичної моделі

suma=pow(a,k)/(k+sqrt(k));

suma2=pow(a,k+1)/(k+1+sqrt(k+1));

suma2=suma2-suma;

suma3+=suma;

3.  Побудова алгоритму

N,E

suma3,k

e<fabs(suma2)

suma=pow(a,k)/(k+sqrt(k));

suma2=pow(a,k+1)/(k+1+sqrt(k+1));

suma2=suma2-suma;

suma3+=suma;k+=1;

suma=0;

k=1;

suma

suma+=pow(a,k)/(k+sqrt(k));

k=1.0;k<n;k++)

Початок

Кінець

4.  Складання сценарію діалогу ПК з користувачем

Користувач вводить данні N та E а програма виводить кількість елементів і суму.

5.  Складання програми

#include <conio.h>

#include <stdio.h>

#include <math.h>

void main(){

clrscr();

int n,i;

float suma=0,e,suma2,suma3=0,a=-0.4,k=0;

printf ("\nvvedit n=");

scanf ("%d",&n);

printf ("\nvvedit e=");

scanf ("%f",&e);

for(k=1.0;k<n;k++)

suma+=pow(a,k)/(k+sqrt(k));

printf("\nsuma n elementiv: %f",suma);

suma=0;

k=1;

do {

suma=pow(a,k)/(k+sqrt(k));

suma2=pow(a,k+1)/(k+1+sqrt(k+1));

suma2=suma2-suma;

suma3+=suma;

k+=1;

}

while(e<fabs(suma2));

printf("\nsuma: %f\nkilkist dodankiv: %f",suma3,k);

getch();

}

6.  Відлагодження

Помилок при компіляції не знайдено.

7.  Тестування програми.

Висновок: Я набув уміння та навички розробки та опису програм з циклами.

  1. Лабораторна робота №11

Тема: Цикли. Табулювання функцій і пошук даних.

Дидактична мета заняття: Набути уміння та навички розробки та описання програм з циклами.

Розвиваюча мета заняття: Розвивати творчість та культуру написання програм. Розвивати логічне мислення, увагу, уяву, кмітливість.

Виховна мета заняття: Виховувати охайність, культуру спілкування, ввічливість , дисциплінованість, наполегливість у навчанні, дбайливе ставлення до програмного забезпечення та ПК.

  1. Постановка задачі.

2.  Побудова математичної моделі

Потрібно скористатись або вивести математичні формули для розв’язання завдання.

3.  Побудова алгоритму

Розробити блок-схему в якій відобразити порядок виконання обчислювальних операцій на основі математичної моделі.

4.  Складання сценарію діалогу ПК з користувачем

Визначити правила роботи людини з ПК, правила введення даних, форму подання інформації користувачу.

5.  Складання програми

Описуємо лістинг програми

6.  Відлагодження

Виправляємо помилки при компіляції.

7.  Тестування програми.

Перевіряємо роботу програми. Дані потрібно вводити такі, щоб результат роботи програми був відомий вам на перед. Дані можна взяти з математичної моделі.

  1. Лабораторна робота №12

Тема: Одновимірні масиви.

Дидактична мета заняття: Набути уміння та навички розробки та описання програм з одновимірними масивами.

Розвиваюча мета заняття: Розвивати творчість та культуру написання програм. Розвивати логічне мислення, увагу, уяву, кмітливість.

Виховна мета заняття: Виховувати охайність, культуру спілкування, ввічливість, дисциплінованість, наполегливість у навчанні, дбайливе ставлення до програмного забезпечення та ПК.

1.  Постановка задачі.

Програма повинна мати власні функції.

2.  Побудова математичної моделі

cos(fabs(2*x))/1.12-cos(3*x-2)+6.15;

3.  Побудова алгоритму

Кінець

A=5;x=k-a;

return cos(fabs(2*x))/1.12-cos(3*x-2)+6.15;

k=0;k<n;k++

Початок

Початок

cash[k]=prub(k);

2000+i,cash[i]

cash=(float*)malloc(sizeof(float)*n);

n

k=-1;k<n;k++

maxr=0;

max=cash[0];

suma+=cash[k];

i++;

(315<cash[k])&&(cash[k]<958)

Кінець

suma

(i<=0)

2000+maxr,max

(max<-1)||(max<-0)

max=cash[k]i++;

maxr=k;

max>cash[k]

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]