Для каждой тройки отрезков, из которых можно построить треугольник, напечатайте площадь данного треугольника - PascalABC.NET
Формулировка задачи:
Даны отрезки а, b, c, d. Для каждой тройки отрезков, из которых можно построить треугольник, напечатайте площадь данного треугольника. Воспользуйтесь функциями определения возможности создания треугольника и вычисления площади.
Решение задачи: «Для каждой тройки отрезков, из которых можно построить треугольник, напечатайте площадь данного треугольника»
textual
Листинг программы
function IstTiangle(a,b,c:real):boolean; begin result:=(a+b>c)and(a+c>b)and(b+c>a) end; function Area(a,b,c:real):real; var p:real; begin p:=(a+b+c)/2; result:=sqrt(p*(p-a)*(p-b)*(p-c)) end; var a,b,c,d:real; begin writeln('Введите 4 положительных числа'); readln(a,b,c,d); if IstTiangle(a,b,c)then writeln('Площадь АВС=',Area(a,b,c):0:2) else writeln('Отрезки А,В,С не образуют треугольник'); if IstTiangle(a,b,d)then writeln('Площадь АВD=',Area(a,b,d):0:2) else writeln('Отрезки А,В,D не образуют треугольник'); if IstTiangle(a,c,d)then writeln('Площадь АСD=',Area(a,c,d):0:2) else writeln('Отрезки А,С,D не образуют треугольник'); if IstTiangle(b,c,d)then writeln('Площадь ВСD=',Area(b,c,d):0:2) else writeln('Отрезки В,С,D не образуют треугольник'); end.
Объяснение кода листинга программы
- function IstTiangle(a,b,c:real):boolean; - функция проверки, образуют ли отрезки треугольник
- function Area(a,b,c:real):real; - функция вычисления площади треугольника
- var a,b,c,d:real; - объявление переменных для ввода пользователем
- writeln('Введите 4 положительных числа'); - вывод сообщения для ввода данных
- readln(a,b,c,d); - считывание данных от пользователя
- if IstTiangle(a,b,c)then - проверка первого треугольника
- begin - начало блока кода
- writeln('Площадь АВС=',Area(a,b,c):0:2); - вывод площади первого треугольника
- end; - конец блока кода
- if IstTiangle(a,b,d)then - проверка второго треугольника
- begin - начало блока кода
- writeln('Площадь АВD=',Area(a,b,d):0:2); - вывод площади второго треугольника
- end; - конец блока кода
- if IstTiangle(a,c,d)then - проверка третьего треугольника
- begin - начало блока кода
- writeln('Площадь АСD=',Area(a,c,d):0:2); - вывод площади третьего треугольника
- end; - конец блока кода
- if IstTiangle(b,c,d)then - проверка четвертого треугольника
- begin - начало блока кода
- writeln('Площадь ВСD=',Area(b,c,d):0:2); - вывод площади четвертого треугольника
- end; - конец блока кода
- end.; - завершение программы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д