Предмет: Информатика, автор: aladyshev99

Определить имеется ли в двумерном целочисленном массиве заданном с помощью генератора случайных чисел в диапазоне (-111;200) значение элемента равного В(В свое видимо задавать)


mnv1962: Язык какой?
mnv1962: -111 и 200 входят в диапазон?
aladyshev99: да

Ответы

Автор ответа: mnv1962
3
const
n=10;m=7;
var
a:array[1..n,1..m]of integer;
flag,i,j,b:integer;
begin
     for i:=1 to n do
         begin
             writeln;
                 for j:=1 to m do
                      begin
                        a[i,j]:=random(312)-111;
                        write(a[i,j]:4);
                      end;
            end;
writeln;
Writeln('B ?');
readln(b);
for i:=1 to n do
  for j:=1 to m do
      if a[i,j]=b then
          flag:=1;
if flag=1 then
   writeln('Yes')
else
   writeln('N');
end.

вариант 2
const
n=10;m=7;
var
a:array[1..n,1..m]of integer;
k,i,j,b:integer;
begin
     for i:=1 to n do
         begin
             writeln;
                 for j:=1 to m do
                      begin
                        a[i,j]:=random(312)-111;
                        write(a[i,j]:4);
                      end;
            end;
writeln;
Writeln('B ?');
readln(b);
for i:=1 to n do
  for j:=1 to m do
      if a[i,j]=b then
          k:=k+1;
if k<>0 then
   writeln('Yes')
else
   writeln('N');
end.

aladyshev99: Спасибо за помощь конечно! Но это немного не подходит...
mnv1962: Это почему?
aladyshev99: Ну у нас как то все проще, я не знаю как обьяснить! Но все равно псасибо огромное!
mnv1962: А проще и не получится. Я так думаю. В одном цикле массив заполняется с помощью случайных чисел. В другом цикле просто проверяется наличие этого В. Можно вместо переменной Flag подсчитывать количество чисел равных В.
mnv1962: Сделала еще один вариант задания
aladyshev99: program q;
uses crt;
var a:array[1..100,1..100]of integer;
b,n,m,i,j:integer;
begin
randomize;
write ('n=');read(n);
write ('m=');read(m);
for i:=1 to n do begin
for j:=1 to m do begin
a[i,j]:=random(422)+200;
write (a[i,j],' ');
end;
writeln;
end;
for i:=1 to n do begin
writeln ('b=',b);
for j:=1 to m do begin
if a[i,j]=b then b:=468;
end;end;end. что то вроде такого,это Pascal ABC. Я то дуб в нем... Беда моя это.
mnv1962: Во-первых у Вас диапазон чисел от 200 до 621
mnv1962: Во-вторых где вывод на экран есть такое B или нет?
mnv1962: Зачем n раз выводить на экран "b=" ,b? Как-то все странно это
Похожие вопросы
Предмет: Английский язык, автор: Аноним