Объединение последовательностей - Pascal ABC
Формулировка задачи:
Даны: натуральное число n, действительные числа а1,а2,а3...аn и b1,b2...b10.
Построить объединение данных последовательностей (т.е. получить в каком-либопорядке все числа, входящие хотя бы в одну из последовательностей).
Решение задачи: «Объединение последовательностей»
textual
Листинг программы
const na=10;
var a,b,c:array[1..100] of real;
nb,nc,i,j,k:integer;
begin
writeln('Введите ',na,' элементов последовательности А, действительные числа');
for i:=1 to na do
begin
write('a[',i,']=');
readln(a[i]);
end;
write('Введите размер последовательности В nb=');
readln(nb);
writeln('Введите ',nb,' элементов последовательности B, действительные числа');
for i:=1 to nb do
begin
write('b[',i,']=');
readln(b[i]);
end;
writeln('Последовательность А');
for i:=1 to na do
write(a[i],' ');
writeln;
writeln('Последовательность B');
for i:=1 to nb do
write(b[i],' ');
writeln;
nc:=1;
c[nc]:=a[1];
for i:=2 to na do
begin
j:=1;
k:=0;
while(j<=nc)and(k=0)do
if c[j]=a[i] then k:=1
else inc(j);
if k=0 then
begin
inc(nc);
c[nc]:=a[i];
end;
end;
for i:=1 to nb do
begin
j:=1;
k:=0;
while(j<=nc)and(k=0)do
if c[j]=b[i] then k:=1
else inc(j);
if k=0 then
begin
inc(nc);
c[nc]:=b[i];
end;
end;
writeln('Последовательность C');
for i:=1 to nc do
write(c[i],' ');
end.
Объяснение кода листинга программы
- Создаются переменные
a,b,c, которые являются массивами для хранения чисел. - Выводится сообщение с просьбой ввести
naэлементов последовательности А, действительные числа. - В цикле for считываются и записываются
naэлементов последовательности А. - Выводится сообщение с просьбой ввести размер
nbэлементов последовательности В, действительные числа. - В цикле for считываются и записываются
nbэлементов последовательности В. - Выводится последовательность А.
- Выводится последовательность В.
- Выводится последовательность С, которая является комбинацией последовательностей А и В.