Примеры задач
Двумерные массивы
Определить, есть ли в данном массиве строка, состоящая только из положительных элементов. Методика решения
Используемые переменные: а – двумерный массив; n,m – размерность массива; I,j – индексы элементов массива; Z – количество положительных элементов строки; Flag – логическая переменная.
В цикле формируем случайным образом элементы массива и выводим полученный массив на экран. Далее, просматриваем строки массива с помощью цикла и подсчитываем количество положительных элементов в каждой строке. Для этого сравниваем каждый элемент строки с нулём. Если элемент положительный, то переменную z увеличиваем на 1 (перед просмотром каждой строки переменную z обнуляем). Если после просмотра строки z равно количеству элементов строки ( z=m ) ,то есть все элементы строки положительные, то логической переменной присваиваем значение true . Выводим на экран результат. Если flag имеет значение true , то выводим что в массиве есть строка с требуемым условием, в противном случае – такой строки нет.
Program ex3_4; Uses Crt; Const n=5; m=5; Type mas=array[1..n,1..m] of integer; Var a:mas; i,j,z:integer; flag:boolean; Begin clrscr; randomize; For i:=1 to n Do For j:=1 to m Do a[i,j]:= -25+random(51); For i:=1 to n Do Begin For j:=1 to m Do Write(a[i,j]:4); WriteLn; End; For i:=1 To n Do begin z:=0; For j:=1 To m Do If (a[i,j]>0) Then z:=z+1; if z=m then flag:=true; end; if flag then Writeln('есть строка с требуемым условием') else Writeln('нет строки с требуемым условием'); Readkey; End.