Из заданных отрезков построить треугольники и определить периметр и площадь каждого треугольника - Pascal ABC
Формулировка задачи:
Даны длины отрезков a, b, c, d. Для каждой тройки этих отрезков, из которых можно построить треугольник, вычислить периметр и площадь этого треугольника.
Решение задачи: «Из заданных отрезков построить треугольники и определить периметр и площадь каждого треугольника»
textual
Листинг программы
var a,b,c,d: real; function Exist (x,y,z: real): boolean; begin Exist:=((y+z-x)>0) and ((x+z-y)>0) and ((x+y-z)>0); end; function Perimetr (x,y,z: real): real; begin Perimetr:=x+y+z; end; procedure Plo (s: string; x,y,z: real); var sq: real; begin if ((y+z-x)>0) and ((x+z-y)>0) and ((x+y-z)>0) then begin sq:=0.25*(sqrt((x+y+z)*(y+z-x)*(x+z-y)*(x+y-z))); writeln('Площадь треугольника со сторонами ',s,'=',sq:0:3); end else writeln('Треугольник со сторонами ',s,' не существует'); end; begin write('Длина отрезка a: '); readln(a); write('Длина отрезка b: '); readln(b); write('Длина отрезка c: '); readln(c); write('Длина отрезка d: '); readln(d); if Exist (a,b,c) then writeln('Периметр треугольника ABC=',Perimetr (a,b,c):0:2) else writeln('Треугольник со сторонами ABC не существует'); if Exist (a,b,d) then writeln('Периметр треугольника ABD=',Perimetr (a,b,d):0:2) else writeln('Треугольник со сторонами ABD не существует'); if Exist (a,c,d) then writeln('Периметр треугольника ACD=',Perimetr (a,c,d):0:2) else writeln('Треугольник со сторонами ACD не существует'); if Exist (b,c,d) then writeln('Периметр треугольника BCD=',Perimetr (b,c,d):0:2) else writeln('Треугольник со сторонами BCD не существует'); Plo ('a,b,c',a,b,c); Plo ('a,b,d',a,b,d); Plo ('a,c,d',a,c,d); Plo ('b,c,d',b,c,d); end.
Объяснение кода листинга программы
- Переменные a, b, c, d объявлены как real.
- Функция Exist принимает три аргумента real и возвращает boolean. Она проверяет, удовлетворяют ли стороны треугольника условию, заданному в задаче.
- Функция Perimetr принимает три аргумента real и возвращает real. Она вычисляет периметр треугольника, используя формулу из задачи.
- Процедура Plo принимает один аргумент string и три аргумента real. Она проверяет, существует ли треугольник со сторонами, указанными в строке. Если треугольник существует, она вычисляет его площадь, используя формулу из задачи, и выводит результат на экран. Если треугольник не существует, она выводит сообщение об этом.
- В начале программы переменные a, b, c, d объявляются и инициализируются значениями, заданными в задаче.
- Затем программа проверяет, существуют ли треугольники со сторонами a, b, c, d, вычисляет их периметры и выводит результаты на экран.
- Затем вызывается процедура Plo для треугольников со сторонами a, b, c, a, b, d, a, c, d, b, c, d.
- В конце программы происходит выход из программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д