Составить программу в pascalabc.net с использованием подпрограммы в виде процедуры: котоая считает сумму двух одинаковых чисел.если это не так,то программа выаодит на экран сообщение о том,что числа разные. повторяется до тех пор,пока ведение числа не будут удовлетворять заданному условию
var
a, b, sum: real;
begin
repeat
write('Введите a и b: '); readln(a, b);
if a = b then
begin
sum := a + b;
writeln('Сумма = ', sum)
end
else
writeln('Числа не одинаковые');
until a = b;
end;
begin
sumSameNumbers();
end.
Остальное текстуально относится к самой программе: ввод данных, проверка условия с зацикливанием и вывод.
// PascalABC.NET 3.3, сборка 1599 от 17.12.2017
// Внимание! Если программа не работает, обновите версию!
procedure Strange(a,b:real; var c:real; var flag:boolean);
begin
flag:=a=b;
if flag then c:=a+b
end;
begin
var a,b,c:real;
var f:boolean;
while true do begin
(a,b):=ReadReal2('Введите пару чисел:');
Strange(a,b,c,f);
if f then begin
Writeln('Сумма равна ',c);
break
end
else Writeln('Числа не равны')
end
end.
Пример
Введите пару чисел: 2 4.5
Числа не равны
Введите пару чисел: 4 4
Сумма равна 8
2. Можно представить, что автор задания не в ладах с русским языком и на самом деле процедура должна сделать все сама, а программа - только вызвать эту процедуру. Тогда решение может быть таким.
procedure Strange2;
begin
while true do begin
var (a,b):=ReadReal2('Введите пару чисел:');
if a=b then begin
Writeln('Сумма равна ',a+b);
exit
end;
Writeln('Числа не равны')
end
end;
begin
Strange2
end.
Пример
Введите пару чисел: 4.5 4.4
Числа не равны
Введите пару чисел: 3.6 3.6
Сумма равна 7.2