Из положительных и отрицательных элементов исходного массива сформировать два новых - Turbo Pascal

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

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

3.Составьте программу формирования из массива A двух массивов, в которых первый массив заполнен отрицательными, а второй - положительными элементами. Помогите пожалуйста

Решение задачи: «Из положительных и отрицательных элементов исходного массива сформировать два новых»

textual
Листинг программы
  1. uses crt;
  2. const nmax=100;
  3. var a,b,c:array[1..nmax] of integer;
  4.     n,m,k,i:byte;
  5. begin
  6. clrscr;
  7. randomize;
  8. repeat
  9. write('Размер массива А от 2 до ',nmax,' n=');
  10. readln(n);
  11. until n in [2..nmax];
  12. m:=0;
  13. k:=0;
  14. writeln('Массив A');
  15. for i:=1 to n do
  16.  begin
  17.   a[i]:=-30+random(61);
  18.   write(a[i]:4);
  19.   if a[i]<0 then
  20.    begin
  21.     m:=m+1;
  22.     b[m]:=a[i];
  23.    end
  24.   else if a[i]>0 then
  25.    begin
  26.     k:=k+1;
  27.     c[k]:=a[i];
  28.    end;
  29.  end;
  30. writeln;
  31. if m=0 then writeln('В массиве А нет отрицательных элементов')
  32. else
  33.  begin
  34.   writeln('Массив отрицательных элементов');
  35.   for i:=1 to m do
  36.   write(b[i]:4);
  37.   writeln;
  38.  end;
  39. if k=0 then writeln('В массиве А нет положительных элементов')
  40. else
  41.  begin
  42.   writeln('Массив положительных элементов');
  43.   for i:=1 to k do
  44.   write(c[i]:4);
  45.   writeln;
  46.  end;
  47. readln
  48. end.

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

  1. Создаётся переменная nmax и присваивается ей значение 100.
  2. Создаются три переменные a, b и c типа array[1..nmax] of integer.
  3. Создаются три переменные n, m, k и i типа byte.
  4. Выполняется цикл repeat, который продолжается до тех пор, пока размер массива a не будет в диапазоне от 2 до nmax.
  5. Внутри цикла считывается размер массива a и выводится на экран.
  6. Инициализируется переменная m значением 0, а переменная k - значением 0.
  7. Выводится на экран сообщение о массиве A.
  8. Запускается цикл for, который выполняется для каждого элемента массива a от 1 до n.
  9. Внутри цикла считывается текущий элемент массива a и вычисляется его знак.
  10. Если элемент массива a отрицательный, то увеличивается значение переменной m на 1, и в массив b записывается текущий элемент массива a.
  11. Если элемент массива a положительный, то увеличивается значение переменной k на 1, и в массив c записывается текущий элемент массива a.
  12. После завершения цикла for выводится на экран сообщение о том, что в массиве A нет отрицательных или положительных элементов.
  13. Выводится на экран сообщение о массиве A.
  14. Выводится на экран сообщение о массиве B, если в массиве a были отрицательные элементы.
  15. Выводится на экран сообщение о массиве C, если в массиве a были положительные элементы.
  16. Выводится на экран символ новой строки.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

8   голосов , оценка 4.25 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы