
Вопрос задан 08.03.2021 в 09:23.
Предмет Информатика.
Спрашивает Салимгареев Руслан.
ПРОГРАММИРОВАНИЕ ПАСКАЛЬ Проверить, все ли строки матрицы C(n1×n2) содержат хотя бы один
отрицательный элемент, если не все, сообщить номер первой, где нет отрицательных элементов.ВНИМАНИЕ: ВСЕ ЭТО ВЫПОЛНИТЬ БЕЗ ЦИКЛА FOR, ТОЛЬКО WHILE ИЛИ REPEAT.

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

Отвечает Фелиферова Анастасия.
Var ar:array of array of integer;
n1,k,i,n2,j:integer;
b:boolean;
begin;
readln(n1);
readln(n2);
inc(n1);
inc(n2);
k:=1;
setlength(ar,n1+1);
while k<>n1 do
begin;
setlength(ar[k],n2+1);
inc(k);
end;
b:=false;
k:=0;
i:=1;
j:=1;
writeln('Matrix:');
while i<>n1 do
begin;
writeln;
while j<>n2 do
begin;
ar[i,j]:=random(100)-50;
write(ar[i,j]:4);
inc(j);
end;
j:=1;
inc(i);
end;
i:=1;
j:=1;
while i<>n1 do
begin;
while j<>n2 do
begin;
if ar[i,j]<0 then b:=true;
inc(j);
end;
if b=false then
begin;
writeln;
writeln(i);
exit;
end;
b:=false;
inc(i);
j:=1;
end;
writeln;
writeln('Все');
end.
n1,k,i,n2,j:integer;
b:boolean;
begin;
readln(n1);
readln(n2);
inc(n1);
inc(n2);
k:=1;
setlength(ar,n1+1);
while k<>n1 do
begin;
setlength(ar[k],n2+1);
inc(k);
end;
b:=false;
k:=0;
i:=1;
j:=1;
writeln('Matrix:');
while i<>n1 do
begin;
writeln;
while j<>n2 do
begin;
ar[i,j]:=random(100)-50;
write(ar[i,j]:4);
inc(j);
end;
j:=1;
inc(i);
end;
i:=1;
j:=1;
while i<>n1 do
begin;
while j<>n2 do
begin;
if ar[i,j]<0 then b:=true;
inc(j);
end;
if b=false then
begin;
writeln;
writeln(i);
exit;
end;
b:=false;
inc(i);
j:=1;
end;
writeln;
writeln('Все');
end.



Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Для решения этой задачи без использования цикла for
, можно воспользоваться циклом while
и проверить каждую строку матрицы на наличие отрицательных элементов. Если встречается строка без отрицательных элементов, можно вывести ее номер и завершить выполнение программы.
Вот пример решения на языке Паскаль:
pascalprogram CheckMatrix; const n1 = 3; // Количество строк матрицы n2 = 4; // Количество столбцов матрицы type Matrix = array[1..n1, 1..n2] of Integer; var C: Matrix; row: Integer; procedure InitializeMatrix(var M: Matrix); var i, j: Integer; begin // Здесь можно инициализировать матрицу C значениями, например, сгенерированными случайным образом // Для простоты примера, просто заполним матрицу значениями 1 и -1 for i := 1 to n1 do for j := 1 to n2 do M[i, j] := 1; // В первой строке добавим элемент без отрицательных значений M[1, 1] := 1; end; function HasNegativeElements(const M: Matrix; row: Integer): Boolean; var col: Integer; begin col := 1; while (col <= n2) and (M[row, col] >= 0) do col := col + 1; Result := col <= n2; end; begin InitializeMatrix(C); row := 1; while (row <= n1) and HasNegativeElements(C, row) do row := row + 1; if row <= n1 then writeln('Первая строка без отрицательных элементов: ', row) else writeln('Все строки содержат хотя бы один отрицательный элемент.'); end.
В этом примере мы используем функцию HasNegativeElements
, которая проверяет, есть ли в заданной строке матрицы отрицательные элементы. Затем мы используем цикл while
, чтобы последовательно проверить каждую строку матрицы. Если встречается строка без отрицательных элементов, программа выводит ее номер и завершает выполнение. Если все строки содержат хотя бы один отрицательный элемент, программа выводит сообщение об этом.


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

Информатика 47

Информатика 33

Информатика 67

Информатика 18

Информатика 25

Информатика 563

Информатика 16
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili