Объяснение ошибок
1. В начале переменные a и b имеют тип integer, а переменная c имеет тип real. Это не имеет смысла. Если ты будешь складывать натуральные числа (без цифр после запятой), то всем переменным можно дать тип integer.
2. read(a,b) Запрашиваются только 2 числа. Если нужно найти сумму трёх чисел и они известны с самого начала, то можно сразу запросить ввод всех трёх переменных.
3. Переменной С присваиваются три значения по очереди.
с каждым присваиванием старое значение меняется на новое это не выполняет никакой задачи
4. В конце программа выводит значение переменной С и 2 числа, всё это соединено знаками ":". Если это было задумано как деление, то это неверная запись. Деление обозначается знаком "/" для типа real или div для типа integer. Если нужна сумма, то выполнять деление тоже не имеет смысла
Объяснение правильной программы
1. Переменные a,b,c имеют тип integer
2. Программа запрашивает ввод трёх слагаемых, обозначенных переменными a,b,c
3. Вывод суммы переменных
Код правильной программы
program zada;
Var a,b,c:integer;
begin
Readln(a,b,c);
writeln(a+b+c);
end.
Программа написана на языке PascalABC.NET
Var A : array [1..100, 1..100] of integer ; {резервирование памяти под массивы}
B : array [1..100, 1..100] of integer ;
C : array [1..100, 1..100] of integer ;
m, n, i,j: integer ; {переменные i,j вводятся как индексы массива}
Begin
randomize;
writeln ('Введите размерность матриц m и n (числа <100)');
readln (m, n);
For i:=1 to m do
For j:=1 to n do
begin
A[i,j]:=random (20)-10; {ввод элемента матрицы}
B[i,j]:=random (20)-10; {ввод элемента матрицы}
end;
writeln ('Итоговая матрица A: ');
For i:=1 to m do
begin
For j:=1 to n do write (A[i,j], ' '); {вывод элементов производится в виде матрицы }
writeln; {после перебора всех столбцов одной строки – переход новую строку}
end;
writeln;
writeln ('Итоговая матрица B: ');
For i:=1 to m do
begin
For j:=1 to n do write (B[i,j], ' '); {вывод элементов производится в виде матрицы }
writeln; {после перебора всех столбцов одной строки – переход новую строку}
end;
writeln;
For i:=1 to m do {цикл по всем строкам матрицы}
For j:=1 to n do {цикл по всем столбцам матрицы}
if (A[i,j] < B[i,j]) then C[i,j] := B[i,j] else C[i,j] := A[i,j];
writeln ('Итоговая матрица C: ');
For i:=1 to m do
begin
For j:=1 to n do write (C[i,j], ' '); {вывод элементов производится в виде матрицы } writeln; {после перебора всех столбцов одной строки – переход новую строку}
end;
end.