Найти медианы треугольника, сторонами которого являются медианы исходного треугольника - Pascal ABC (15009)
Формулировка задачи:
А, B, C - значения длин сторон некоторого треугольника. Пользуясь вспомогательной программой найти медианы треугольника, сторонами которого являются медианы исходного треугольника.
Решение задачи: «Найти медианы треугольника, сторонами которого являются медианы исходного треугольника»
textual
Листинг программы
function med(a,b,c:real):real; begin med:=sqrt(2*b*b+2*c*c-a*a)/2; end; var a,b,c,ma,mb,mc:real; begin repeat writeln('Введите стороны треугольника'); readln(a,b,c); if(a<=0)or(b<=0) or(c<=0)or(a>=b+c)or(b>=a+c)or(c>=a+b)then writeln('Эти числа не могут быть сторонами треугольника'); until (a>0)and(b>0)and(c>0)and(a<b+c)and(b<a+c)and(c<a+b); ma:=med(a,b,c); mb:=med(b,a,c); mc:=med(c,a,b); writeln('Длины сторон треугольника, образованного медианами'); writeln(ma:0:2,' ',mb:0:2,' ',mc:0:2); ma:=med(ma,mb,mc); mb:=med(mb,ma,mc); mc:=med(mc,ma,mb); writeln('Длины медиан нового треугольника'); writeln(ma:0:2,' ',mb:0:2,' ',mc:0:2); end.
Объяснение кода листинга программы
- Создается функция
med
с тремя параметрами типаreal
, которая вычисляет медиану треугольника по заданным сторонам. - Создается переменная
a
, которая представляет собой первую сторону треугольника. - Создается переменная
b
, которая представляет собой вторую сторону треугольника. - Создается переменная
c
, которая представляет собой третью сторону треугольника. - Вычисляется медиана треугольника по заданным сторонам и сохраняется в переменную
ma
. - Вычисляется медиана треугольника по заданным сторонам и сохраняется в переменную
mb
. - Вычисляется медиана треугольника по заданным сторонам и сохраняется в переменную
mc
. - Выводится сообщение о том, что введенные стороны треугольника не могут быть использованы для создания треугольника.
- Выполняется цикл, в котором пользователю предлагается ввести стороны треугольника.
- Проверяется, являются ли введенные стороны треугольника допустимыми.
- Если все стороны введены корректно, то вычисляются медианы треугольника и сохраняются в переменные
ma
,mb
иmc
. - Выводится сообщение с длинами сторон треугольника, образованного медианами.
- Вычисляется новая медиана треугольника, используя предыдущие медианы и сохраняется в переменную
ma
. - Вычисляется новая медиана треугольника, используя предыдущие медианы и сохраняется в переменную
mb
. - Вычисляется новая медиана треугольника, используя предыдущие медианы и сохраняется в переменную
mc
. - Выводится сообщение с длинами медиан нового треугольника.
- Выполняется цикл, в котором обновляются медианы треугольника.
- Конец программы.