М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
demeshkin1
demeshkin1
13.07.2020 20:27 •  Информатика

Как написать программу в паскале, подробно


Как написать программу в паскале, подробно

👇
Открыть все ответы
Ответ:
agarkovatanech
agarkovatanech
13.07.2020
Program pr3;
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.
4,5(20 оценок)
Ответ:
Zandrew2000
Zandrew2000
13.07.2020

Объяснение ошибок

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

4,7(8 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ