Образовать третий массив из двух заданных по правилу - Pascal
Формулировка задачи:
Даны два массива .Образовать третий массив в котором сначала будут расположены все положительные(+) элементы первого массива затем положительные элементы второго, дальше все отрицательные(-) элементы первого массива.
Решение задачи: «Образовать третий массив из двух заданных по правилу»
textual
Листинг программы
var
a, b: Array[Byte] Of ShortInt;
c: Array[Word] Of ShortInt;
na, nb: Byte;
nc, i: Word;
begin
Randomize(); nc := 0;
repeat
Write('Input NA:');
ReadLn(na);
until (na > 0);
Write('A:');
for i := 0 to na - 1 do
begin
a[i] := Random(199) - 99;
Write(a[i]:4);
if (a[i] > 0)
then
begin
c[nc] := a[i];
Inc(nc);
end;
end;
WriteLn;
repeat
Write('Input NB:');
ReadLn(nb);
until (nb > 0);
Write('B:');
for i := 0 to nb - 1 do
begin
b[i] := Random(199) - 99;
Write(b[i]:4);
if (b[i] > 0)
then
begin
c[nc] := b[i];
Inc(nc);
end;
end;
WriteLn;
for i := 0 to na - 1 do
if (a[i] < 0)
then
begin
c[nc] := a[i];
Inc(nc);
end;
Write('C:');
for i := 0 to nc - 1 do
Write(c[i]:4);
end.
Объяснение кода листинга программы
- Объявляются переменные:
a: массив байтовb: массив байтовc: массив словna: байтnb: байтnc: словоi: слово
- Генерируется случайное значение
ncи устанавливается в 0. - Повторяется ввод значения
naдо тех пор, покаnaне станет больше 0. - Выводится
A:и заполняется массивaслучайными числами. Если число положительное, оно добавляется в массивcи увеличивается значениеnc. - Повторяется ввод значения
nbдо тех пор, покаnbне станет больше 0. - Выводится
B:и заполняется массивbслучайными числами. Если число положительное, оно добавляется в массивcи увеличивается значениеnc. - Проверяются значения в массиве
a, и если число отрицательное, добавляется в массивcи увеличивается значениеnc. - Выводится
C:и выводится массивcсобранный из значений массивовaиb, следуя всем ранее установленным правилам при добавлении значений.