• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Подпрограмма

  • Автор темы Nonius
  • Дата начала
N

Nonius

Не знаю как сделать

Язык программирования: Паскаль

Разработать программу расчёта периметра и площади пятиугольника заданного координатами своих вершин.
Использовать две подпрограммы-функции (Function).
Одна расчитывает длину отрезка по заданным координатам концов, а другая площадь треугольника по заданным координатам вершин(Формула герона).
 
N

nayke

Не знаю как сделать

Язык программирования: Паскаль

Разработать программу расчёта периметра и площади пятиугольника заданного координатами своих вершин.
Использовать две подпрограммы-функции (Function).
Одна расчитывает длину отрезка по заданным координатам концов, а другая площадь треугольника по заданным координатам вершин(Формула герона).
Код:
//Длина отрезка
Function Len(x1,x2,y1,y2:double):double;
begin
result:=sqrt(sqr(x2-x1)+sqr(y2-y1));
end;
//площадь треугольника
Function Square(a,b,c:double):double;
begin
p:=(a+b+c)/2;
s:=sqrt(abs(p*(p-a)*(p-b)*(p-c)));
end;
 
H

hosm

nayke по 2-й замечание:
Одна расчитывает длину отрезка по заданным координатам концов, а другая площадь треугольника по заданным координатам вершин (Формула герона).
и что-то я сомневаюсь уже, что автор темы допилит сам, ведь задания элементарные...
+ результат не присваивается ф-ции Square

по 1й - вроде (насколько я помню) result появился только в делфи, а в паскале надо явно присваивать имени функции.
 
N

nayke

nayke по 2-й замечание:

и что-то я сомневаюсь уже, что автор темы допилит сам, ведь задания элементарные...
+ результат не присваивается ф-ции Square

по 1й - вроде (насколько я помню) result появился только в делфи, а в паскале надо явно присваивать имени функции.
ну да только в Delphi

поэтому соответственно для паскаль
Код:
//Длина отрезка
Function Len(x1,x2,y1,y2:real):real;
begin
Len:=sqrt(sqr(x2-x1)+sqr(y2-y1));
end;
//площадь треугольника
Function Square(a,b,c:real):real;
var d:real;
begin
p:=(a+b+c)/2;
Square:=sqrt(abs(p*(p-a)*(p-b)*(p-c)));
end;

Ну далее как говорится задачи автора допиливать или как.. это исключительно наброски..
 
N

Nonius

Вот попробовал написать сам, проверьте пожалуйста

Код:
type
pType = record X, Y : real; end;

function Len(P1, P2 : pType) : Real;
begin
Len := Sqrt((P1.X - P2.X)*(P1.X - P2.X) + (P1.Y - P2.Y)*(P1.Y - P2.Y));
end;

function Pl(P1, P2, P3 : pType) : Real;
var
a, b, c, p : Real;
begin
a := Len(P1, P2);
b := Len(P2, P3);
c := Len(P1, P3);
p := (a + b + c) / 2;
Pl := Sqrt(p * (p - a) * (p - B ) * (p - c));
end;

var
P : array [1..5] of pType;
begin
Write('Введите через пробел координаты 1 точки: '); ReadLn(P[1].X, P[1].Y);
Write('Введите через пробел координаты 2 точки: '); ReadLn(P[2].X, P[2].Y);
Write('Введите через пробел координаты 3 точки: '); ReadLn(P[3].X, P[3].Y);
Write('Введите через пробел координаты 4 точки: '); ReadLn(P[4].X, P[4].Y);
Write('Введите через пробел координаты 5 точки: '); ReadLn(P[5].X, P[5].Y);

WriteLn('Площадь пятиугольника = ', Pl(P[1], P[2], P[3]) + Pl(P[1], P[3], P[4]) + Pl(P[1], P[4], P[5]):6:3);
end.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!