Вопрос задан 10.07.2023 в 11:16. Предмет Информатика. Спрашивает Давыд Кирилл.

Помогите пожалуйста. Написать программу, которая вводит двумерный массив 3х3, выводит его на экран

в виде матрицы, а затем выводит количество отрицательных элементов. Я программу написала, но не понимаю, где ошибка program mas2; const m=3; n=3; var i, j, c: Integer; a: array [1..m, 1..n] of Integer; begin for i := 1 to m do for j := 1 to n do read (a[i,j]); for i := 1 to m do begin for j := 1 to n do write (a[i,j]:6); writeln; c := 0; if a[i, j] < 0 then c:=c+1; end; WriteLn('Количество отрицательных элементов равно ', c); end.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Бунтякова Анастасия.

Вы забыли поместить команды цикла в блок "begin-end", а также зачем-то внутри цикла каждый раз обнуляли переменную c. Взгляните на исправленный вариант:

program mas2;

const

m=3;

n=3;

var

i, j, c: Integer;

a: array [1..m, 1..n] of Integer;

begin

for i := 1 to m do

for j := 1 to n do

read (a[i,j]);

c := 0;

for i := 1 to m do

begin

for j := 1 to n do

begin  

write (a[i,j]:6);

if a[i, j] < 0 then

c:=c+1;

end;

writeln;

end;

WriteLn('Количество отрицательных элементов равно ', c);

end.


0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Программа, которую вы написали, имеет некоторые ошибки. Ваш код пытается подсчитать количество отрицательных элементов только в последней строке матрицы. Вам нужно переместить проверку на отрицательные элементы во внутренний цикл, чтобы программа правильно подсчитывала количество отрицательных элементов в каждой строке. Также в вашем коде есть некорректное использование символа "<" в условии.

Вот исправленный вариант вашей программы:

pascal
program mas2; const m = 3; n = 3; var i, j, c: Integer; a: array [1..m, 1..n] of Integer; begin // Ввод массива for i := 1 to m do for j := 1 to n do readln(a[i, j]); // Вывод массива в виде матрицы for i := 1 to m do begin for j := 1 to n do write(a[i, j]:6); writeln; end; c := 0; // Инициализация счетчика отрицательных элементов // Подсчет отрицательных элементов for i := 1 to m do for j := 1 to n do if a[i, j] < 0 then c := c + 1; // Вывод количества отрицательных элементов WriteLn('Количество отрицательных элементов равно ', c); end.

Теперь программа должна корректно выводить матрицу и подсчитывать количество отрицательных элементов.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос