Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторні.docx
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
957.35 Кб
Скачать
  1. Складання програми:

#include<stdio.h>

#include<math.h>

#include <conio.h>

void main(){

float Pi, S,SS,r1,r,p,pp1;

printf("Vvedit ploschy kryga \n");

scanf("%f",&S);

Pi = 3.14;

r1 = S / Pi;

r = sqrt(r1);

p = r * 2;

SS = p * p;

pp1 = p * 4;

printf("S = %f \n",SS);

printf("P = %f \n",pp1);

getchar ();

getchar ();

}

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

В даній програмі помилок не було виявлено й з першого запуску програма показала вдалий результат.

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

  1. Висновок:

В даній лабораторній роботі я навчився складати лінійні програми, та побачив можливі випадки роботи даної програми.

Лабораторна робота №4

Тема: Задача про трикутник

Програмне забезпечення: Turbo C++

Хід роботи

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

Обчислити висоту ha та висоту mc.

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

Користувач буде вводити х1,х2,х3,y1,y2,y3. Дані змінні будуть координатами на декартовій системі координат складати трикутник, потім, коли користувач введе дані координати, то математичкими формулами порахує й видасть повідомлення на екран про величину висоти “ha” , та медіани до сторони с.

На данному малюнку, за вказаними координатами медіана повинна дорівнювати в кінці розв'язку програми «4».

На цьому малюнку видно що висота в ході виконання програми буде дорівнювати «4», тобто программу запустим 2 рази для перевірки двух умов.

Блок-схема:

початок

X1,y1,x2,y2,x3,y3

c = x1 - x2; c1 = c * c; p = y1 - y2; p1 = p * p; f = c1 + p1;

a = sqrt(f); cc = x2 - x3; cc1 = cc * cc; pp = y2 - y3;p1 = pp * pp;

ff = pp1 + cc1; b = sqrt(ff); e = x3 - x1; e1 = e * e; r = y3 - y1;

r1 = r * r; f2 = r1 + e1; g = sqrt(f2); j = (a + b + g)/2.0;

S = sqrt(j*(j - a)* (j - b)*(j - g)); ha = (2 * S)/ a; jj = (x1+x3) / 2;

jj1 = (y1+y3) / 2; m = sqrt((x2 - jj)*(x2-jj)+(y2-jj1)*(y2-jj1));

ha,mc

кінець

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

#include<stdio.h>

#include<math.h>

#include <conio.h>

void main(){

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

double c,c1,cc,cc1,p,p1,pp,pp1,f,ff,a,b,e,e1,r,r1,f2,g;

double S,j,ha,m,jj,jj1;

printf("Vvedit x1 \n");

scanf("%d",&x1);

printf("Vvedit y1 \n");

scanf("%d",&y1);

printf("Vvedit x2 \n");

scanf("%d",&x2);

printf("Vvedit y2 \n");

scanf("%d",&y2);

printf("Vvedit x3 \n");

scanf("%d",&x3);

printf("Vvedit y3 \n");

scanf("%d",&y3);

c = x1 - x2;

c1 = c * c;

p = y1 - y2;

p1 = p * p;

f = c1 + p1;

a = sqrt(f);

cc = x2 - x3;

cc1 = cc * cc;

pp = y2 - y3;

pp1 = pp * pp;

ff = pp1 + cc1;

b = sqrt(ff);

e = x3 - x1;

e1 = e * e;

r = y3 - y1;

r1 = r * r;

f2 = r1 + e1;

g = sqrt(f2);

j = (a + b + g)/2.0;

S = sqrt(j*(j - a)* (j - b)*(j - g));

ha = (2 * S)/ a;

jj = (x1+x3) / 2;

jj1 = (y1+y3) / 2;

m = sqrt((x2 - jj)*(x2-jj)+(y2-jj1)*(y2-jj1));

printf("Mediana trukytnuka = %lf \n",m);

printf ("Vusota trukytnuka = %lf \n",ha);

getchar ();

getchar ();

}

Від лагодження:

Спочатку дана програма працювала невірно, тому що була введена помилково формула для рахування, медіани трикутника та неправильно заданий тип запам’ятовування данних введених користувачем. Дана формула була виправлена на правильну, після чого програма стала вірно працювати, а тип данних був змінений на потрібний.

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

Спочатку перевіряємо чи вірно програма вирахувала висоту:

Тепер перевіряємо чи правильно програма порахувала медіану (згідно малюнків вище):

Висновок:

В даній лабораторній роботі я навчився складати програми з більш складними формулами та більш складної умови, виправляти та виявляти помилки роботи програми.

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

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

Програмне забезпечення: Turbo C++