ПОЖАЛУЙСТА ПОМОГИТЕ ** ПАСКАЛЕ СОСТАВИТЬ ПРОГРАММУ Заполните случайными числами в...

0 голосов
38 просмотров

ПОЖАЛУЙСТА ПОМОГИТЕ НА ПАСКАЛЕ СОСТАВИТЬ ПРОГРАММУ
Заполните случайными числами в диапазоне от 1 до 5 два массива: A[1:20] и B[1:20]. Найдите и выведите на экран только те элементы этих массивов, значения которых совпадают. Например, если A[2]=B[2]=4, то на экран надо вывести:
Номер: 2 значение: 4
Если совпадений нет, то вывести сообщение об этом.


Информатика (71 баллов) | 38 просмотров
Дано ответов: 2
0 голосов
Правильный ответ
// PascalABC.NET 3.2, сборка 1387 от 20.02.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=20;
  var a:=ArrRandom(n,1,5); a.Println;
  var b:=ArrRandom(n,1,5); b.Println;
  var k:=0;
  for var i:=1 to n do
    if a[i-1]=b[i-1] then begin
      Writeln('Номер: ',i,' значение: ',a[i-1]);
      k+=1
      end;
  if k=0 then Writeln('Совпадений нет')
end.

Пример
1 1 1 4 5 5 5 1 5 5 5 2 1 2 1 5 3 5 2 4
4 4 1 1 4 3 5 1 3 2 2 3 1 1 5 3 5 4 3 1
Номер: 3 значение: 1
Номер: 7 значение: 5
Номер: 8 значение: 1
Номер: 13 значение: 1
(150k баллов)
0 голосов

Const n=20;
var a,b:array[1..n] of integer;
i,k:integer; 
begin
Randomize;
writeln('Массив A:');
for i:=1 to n do
 begin
 a[i]:=random(5)+1;
 write(a[i]:3);
 end;
writeln;
writeln('Массив B:');
for i:=1 to n do
 begin
 b[i]:=random(5)+1;
 write(b[i]:3);
 end;
writeln;
k:=0;
for i:=1 to n do
 if a[i]=b[i] then 
  begin
  writeln('Номер ',i,' значение ',a[i]);
  k:=k+1;
  end;
if k=0 then writeln('Совпадающих значений нет');
end.

Пример:
Массив A:
  4  3  5  3  3  4  1  2  1  4  2  1  3  1  3  1  1  5  5  5
Массив B:
  1  4  2  4  1  1  1  3  1  2  3  2  1  1  5  4  4  1  3  2
Номер 7 значение 1
Номер 9 значение 1
Номер 14 значение 1

(194k баллов)