В чём ошибка этой программы? Она должна запрашивать ввод 2 чисед, а потом вызывать функцию с помомщью которой выведет сумму и разность числа var a,b,c:string; procedure summ(plus:string;minus:string); Begin plus:=a+b; minus:=a+b; writeln('',plus,''); writeln('',minus,''); end; Begin Writeln('chislo'); Readln(b); Readln(b); summ (Writeln('',plus,'',''minus'') end.

20 Авг 2021 в 19:42
130 +1
0
Ответы
1

Ошибки в этой программе:

В процедуре summ параметры plus и minus должны быть объявлены как var, чтобы их значения могли быть изменены и переданы обратно в основную программу.Внутри процедуры summ неправильно вычисляется разность чисел. Вместо этого нужно было использовать вычитание (minus:=a-b;).В основной программе ошибочно дважды считывается значение переменной b, вместо того, чтобы считывать значение переменных a и b.В вызове функции summ передается неверное количество параметров и неправильное их объединение в строку.

Более корректный вариант программы:

var a, b: integer;
procedure summ(var plus, minus: integer);
begin
plus := a + b;
minus := a - b;
writeln('Сумма: ', plus);
writeln('Разность: ', minus);
end;
begin
writeln('Введите первое число:');
readln(a);
writeln('Введите второе число:');
readln(b);
summ(a, b);
end.
17 Апр 2024 в 13:16
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир