Ввести 3 числа - стороны треугольника (причем третью сторону с проверкой и повторным вводом, если она не удовлетворяет условию). Найти высоту, проведенную к большей стороне. Решить в Паскале! Срочно! Пожалуйста!!!!!

Ввести 3 числа - стороны треугольника (причем третью сторону с проверкой и повторным вводом, если она не удовлетворяет условию). Найти высоту, проведенную к большей стороне. Решить в Паскале! Срочно! Пожалуйста!!!!!
Гость
Ответ(ы) на вопрос:
Гость
program abc; var  a, b, c, d, h, s, p: real; begin   writeln('Введите 3 стороны треугольника');   readln(a);   readln(b);   readln(c);   if c > a + b then writeln('Ошибка! Одна сторона не может быть больше суммы двух других, введите третью сторону ещё раз или перезапустите программу и введите верные данные'); if c > a + b then readln(c); if (a > b) and (a > c) then d := a  else if (b > c) then d := b else d := c; p := (a + b + c) / 2; s := sqrt(p * (p - a) * (p - b) * (p - c)); h := 2 * s / d; writeln('Высота равна - '+h);end.
Гость
var a, b, c, max, p, h : real; begin write('введите сторону а'); readln (a); write('введите сторону b'); readln (b); write('введите сторону c'); readln (c); while ((c >a+b) or (a>b+c) or (b>a+c)) begin write ('введите повторно сторону с'); readln (c); end; if (a>=b) and (a>=c) then max:=a else if (b>=a) and (b>=c) then max:=b else if if (c>=b) and (c>=a) then max:=c; p:=(a+b+c)/2 h:= 2*sqrt (p*(p-a)*(p-b)*(p-c))/max; writeln ('h= ',h); end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы