Из многомерного массива создать одномерный - Pascal ABC

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

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

Всем Привет, может это покажется смешным, но не могу создать из многомерного массива одномерный( Сижу уже час блин( Само задание звучит так: Составить программу, записывающий все положительные элементы двумерного массива А в одномерный массив В, а отрицательные в одномерный массив С. Но мне нужен только алгоритм преобразования многомерного массива в одномерный, без использования функции move. Заранее благодарю за помощь) Нашел в чем проблема!) Вот код) Все работает)

Решение задачи: «Из многомерного массива создать одномерный»

textual
Листинг программы
Var iArr    : Array[1..10,1..10] of integer;
Var oPos   : Array[1..100] of integer;
Var oNeg  : Array[1..100] of integer;
Var pPos,pNeg,i,j : integer;
 
     // Заполнение двумерного массива ...
 
     // разбрасывание двумерного по двум одномерным
 
     pPos:=0;
     pNeg:=0;
 
     for i:=1 to 10 do
         for j:=1 to 10 do begin
              if iArr[i,j]<0 then begin
                 pNeg:=pNeg+1;
                 oNeg[pNeg]=iArr[i,j];
              end;
              if iArr[i,j]>0 then begin
                 pPos:=pPos+1;
                 oPos[pPos]=iArr[i,j];
              end;
           end;

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

  1. Создается двумерный массив iArr размером 10x10.
  2. Создаются три одномерных массива: oPos, oNeg и pPos.
  3. Заполняется двумерный массив iArr.
  4. Создаются две переменные-счетчика: pPos и pNeg, которые будут использоваться для подсчета количества отрицательных и положительных чисел соответственно.
  5. Инициализируются счетчики pPos и pNeg нулем.
  6. Запускается цикл, который проходит по каждой ячейке двумерного массива iArr.
  7. Внутри цикла проверяется значение элемента iArr[i,j].
  8. Если значение элемента меньше нуля, то увеличивается счетчик pNeg на единицу и элемент iArr[i,j] копируется в одномерный массив oNeg.
  9. Если значение элемента больше нуля, то увеличивается счетчик pPos на единицу и элемент iArr[i,j] копируется в одномерный массив oPos.
  10. После завершения цикла, значения счетчиков pPos и pNeg будут содержать количество положительных и отрицательных чисел соответственно.
  11. Конечная цель программы - использовать значения счетчиков для создания одномерного массива из полученных данных.

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


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

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

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