Данные в каждый массив вводим по строго по возрастанию через пробел, признак окончания ввода - число 0 или отрицательное, в конце ввода Enter.
// PascalABC.NET 3.2, сборка 1439 от 09.05.2017 // Внимание! Если программа не работает, обновите версию!
begin var a:=ReadSeqIntegerWhile('Последовательность 1:',t->t>0).ToArray; var b:=ReadSeqIntegerWhile('Последовательность 2:',t->t>0).ToArray; (var n,var m):=(a.Length-1,b.Length-1); (var i,var j,var k):=(0,0,0); repeat if a[i]=b[j] then begin k+=1; i+=1; j+=1 end else if a[i]<b[j] then i+=1 else j+=1; until (i>n) or (j>m); Writeln('k=',k) end.
// PascalABC.NET 3.2, сборка 1439 от 09.05.2017
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ReadSeqIntegerWhile('Последовательность 1:',t->t>0).ToArray;
var b:=ReadSeqIntegerWhile('Последовательность 2:',t->t>0).ToArray;
(var n,var m):=(a.Length-1,b.Length-1);
(var i,var j,var k):=(0,0,0);
repeat
if a[i]=b[j] then begin k+=1; i+=1; j+=1 end
else
if a[i]<b[j] then i+=1 else j+=1;
until (i>n) or (j>m);
Writeln('k=',k)
end.
Пример
Последовательность 1: 2 3 5 8 11 14 19 23 38 0
Последовательность 2: 1 3 4 5 6 9 11 14 17 18 21 23 29 0
k=5
Монитор, графопостроитель, принтер, (мышь - устройство ввода).
Жёсткий диск, flash-память, компакт-диск, (процессор - не элемент памяти) .
Принтер, акустические колонки, наушники, (микрофон - устройство ввода).
(Системный блок - обобщенное), центральный процессор, оперативная память, жёсткий диск, блок питания.
Системный блок, клавиатура, мышь, монитор, (акустические колонки - не обязательны).
Видеокарта, (карта расширения, звуковая карта, сетевая карта.
Enter, (End - др. функциональное назначение), Esc, Delete.
(Цветовой принтер - не существует), лазерный принтер, матричный принтер, струйный принтер
слова, которые нужно удалить - в скобках, и пояснения, почему так