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

Результаты выполнения:

Vvedite kollichestvo strok matrici

3

Vvedite kollichestvo stolbcov matrici

3

Vvedite element 1 stolbca 1

1

Vvedite element 1 stolbca 2

-3

Vvedite element 1 stolbca 3

4

Vvedite element 2 stolbca 1

35

Vvedite element 2 stolbca 2

-65

Vvedite element 2 stolbca 3

7

Vvedite element 3 stolbca 1

5

Vvedite element 3 stolbca 2

56

Vvedite element 3 stolbca 3

76

max= 76.00 №3_3

min=-65.00 №2_2

Vvedite kollichestvo strok matrici

2

Vvedite kollichestvo stolbcov matrici

2

Vvedite element 1 stolbca 1

1

Vvedite element 1 stolbca 2

-9

Vvedite element 2 stolbca 1

3

Vvedite element 2 stolbca 2

54

max= 54.00 №2_2

min=-65.00 №1_1

Задание №4: Даны n треугольников, заданных координатами своих вершин xi, yi, i=1, 2, …, 3*n. Используя функцию для нахождения площади одного треугольника, найти треугольник с максимальной площадью

Схема алгоритма:

Начало

Начало

a:=sqrt(sqr(x1-x2)+sqr(y1-y2));

s:=sqrt(sqr(x2-x3)+sqr(y2-y3));

d:=sqrt(sqr(x3-x1)+sqr(y3-y1));

p:=(a+s+d)/2;

rez:=sqrt(p*(p-a)*(p-s)*(p-d));

Ввод n

Конец

u=1, 1, n

Ввод координат

Конец цикла

max:=rez(m[1,1,1],m[1,1,2],m[1,2,1],m[1,2,2],m[1,3,1],m[1,3,2]);

k:=0;

u=1, 1, n

t:=rez(m[u,1,1],m[u,1,2],m[u,2,1],m[u,2,2],m[u,3,1],m[u,3,2])

t>max

нет

max=t; k=u

да

Вывод результата

Конец

Текст программы:

Program lab5_4;

Var

max,t:real;

u,n,k:integer;

M:array[1..999, 1..3, 1..2] of integer;

Function rez(x1,y1,x2,y2,x3,y3:integer):real;

Var

a,s,d,p:real;

Begin

a:=sqrt(sqr(x1-x2)+sqr(y1-y2));

s:=sqrt(sqr(x2-x3)+sqr(y2-y3));

d:=sqrt(sqr(x3-x1)+sqr(y3-y1));

p:=(a+s+d)/2;

rez:=sqrt(p*(p-a)*(p-s)*(p-d));

End;

Begin

Writeln('vvedite kolichestvo treugolnikov');

Read(n);

For u:=1 to n do

Begin

Writeln('Vvedite koordinati treugolnika #',u);

Write('x1=');Read(m[u,1,1]);Write('y1=');Read(m[u,1,2]);

Write('x2=');Read(m[u,2,1]);Write('y2=');Read(m[u,2,2]);

Write('x3=');Read(m[u,3,1]);Write('y3=');Read(m[u,3,2]);

end;

max:=rez(m[1,1,1],m[1,1,2],m[1,2,1],m[1,2,2],m[1,3,1],m[1,3,2]);

k:=0;

For u:=1 to n do

Begin

t:=rez(m[u,1,1],m[u,1,2],m[u,2,1],m[u,2,2],m[u,3,1],m[u,3,2]);

if t>max then

Begin

max:=t;

k:=u

end

end;

Writeln('Naibolshaya ploshad=',max:6:2,' u treugolnika #',k)

End.

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