Переписать в массив Y положительные и в массив Z отрицательные элементы массива X - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

Переписать в массив Y положительные и в массив Z отрицатель- ные элементы массива X[N]. Помогите пожалуйста с масивами этими) я в них ничего не понимаю. Напишите программу. Буду очень признателен вам)

Решение задачи: «Переписать в массив Y положительные и в массив Z отрицательные элементы массива X»

textual
Листинг программы
var x,y,z:array[1..100] of integer;
    nx,ny,nz,i:integer;
begin
randomize;
repeat
write('Размер массива X от 2 до 100 nx=');
readln(nx);
until nx in [2..100];
writeln('Массив X');
ny:=0;
nz:=0;
for i:=1 to nx do
 begin
  x[i]:=-10+random(21);
  write(x[i]:4);
  if i mod 20=0 then writeln;
  if x[i]>0 then
   begin
    inc(ny);
    y[ny]:=x[i];
   end;
  if x[i]<0 then
   begin
    inc(nz);
    z[nz]:=x[i];
   end;
 end;
writeln;
if ny=0 then writeln('Положительных элементов нет!')
else
 begin
  writeln('Массив Y');
  for i:=1 to ny do
   begin
    write(y[i]:4);
    if i mod 20=0 then writeln;
   end;
 end;
writeln;
if nz=0 then writeln('Отрицательных элементов нет!')
else
 begin
  writeln('Массив Z');
  for i:=1 to nz do
   begin
    write(z[i]:4);
    if i mod 20=0 then writeln;
   end;
 end;
end.

Объяснение кода листинга программы

  1. Создается переменная x типа array[1..100] of integer (массив из 100 целых чисел) и инициализируется значением -10+random(21) (случайное число от -10 до 20).
  2. Создаются две переменные ny и nz типа integer (целое число) и инициализируются значением 0. Они будут использоваться для отслеживания количества положительных и отрицательных элементов соответственно.
  3. Запускается цикл for, который будет выполняться столько раз, сколько элементов в массиве x.
  4. Внутри цикла происходит следующее:
    • x[i]:=-10+random(21) присваивается значение случайного числа от -10 до 20 текущему элементу массива x.
    • Если текущий элемент массива x больше нуля (x[i]>0), то увеличивается значение переменной ny и присваивается значение текущего элемента массива x переменной y[ny].
    • Если текущий элемент массива x меньше нуля (x[i]<0), то увеличивается значение переменной nz и присваивается значение текущего элемента массива x переменной z[nz].
  5. После завершения цикла выводится сообщение о количестве положительных и отрицательных элементов в массиве x.
  6. Если количество положительных элементов равно нулю (ny=0), выводится сообщение о том, что положительных элементов нет.
  7. Если количество отрицательных элементов равно нулю (nz=0), выводится сообщение о том, что отрицательных элементов нет.
  8. Код для вывода значений массива y и z отсутствует в данном коде.

Оцени полезность:

9   голосов , оценка 3.667 из 5
Похожие ответы