Проанализировав дорогу, видно, что путь между пунктами A и B во всех представленных схемах различен, где-то он равен 1, а где-то 3, нас же интересует путь из A в B равный 4, заданный по условию, и этого будет достаточно, чтобы дать ответ.
Схема 1. Путь из A в B равен 3 - не подходит
Схема 2. Путь из A в B равен 1 - не подходит
Схема 3. Путь из A в B равен 2 - не подходит
Схема 4. Путь из A в B равен 4 - удовлетворяет условию и является ответом.
В случае если путь между этими пунктами равен, достаточно сравнить пути между оставшимися пунктами.
Если вам нужно больше объяснений как решать такие задачи, то можете обратиться ко мне и я вас научу в свободное время.
А) а = 9;
b = 4;
b = 40;
a = 5;
б) a = 123;
b = 12;
b = 5;
b = 127;
a = 250;
в) a = 951;
b = 60;
a = 95;
a = 5;
a = 65;
Жёсткий диск ;) А в чем смысл?
В таком виде программа, хотя бы запустится:
program i_2;
const c=2; f=4; g=6;
var r,p: real;
begin
writeln('определение площади треугольника по теореми Герона');
write('нахождение площади');
readln(r);
p:=(c+f+g)/2;
r:=sqrt(p*(p-c)*(p-f)*(p-g))
end.
Но есть куча вопросов:
1) Если c, f, g - стороны треугольника, то что такое - r ?
2) Если r - это площадь, то как мы можем её ввести, если мы хотим её сосчитать?
3) Где вывод полученной информации (writeln(r))?
4) Треугольника со сторонами c=2, f=4 и g=6 существовать не может
Предлагаю отказаться от экзотических обозначений и сделать проверку на существование треугольника, а также добавить получение данных по сторонам от пользователя:
program i_2;
var a,b,c,p,s: real;
begin
writeln('Определение площади треугольника по теореме Герона');
write('Введите стороны треугольника: ');
readln(a,b,c);
if (a + b <= c) or (b + c <= a) or (a + c <= b) then writeln ('Треугольника с
такими сторонами не существует')
else
begin
p:=(a+b+c)/2;
s:=sqrt(p*(p-a)*(p-b)*(p-c));
writeln('Площадь треугольника равна ',s:0:3)
end
end.
12487=10000+2000+400+80+7