Создание динамического массива - Free Pascal

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

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

Хеллоу, помогите, пожалуйста, написать программу, создающую динамический массив размером, указанным пользователем, и заполняющую его числами от 1 до размера массива.

Решение задачи: «Создание динамического массива»

textual
Листинг программы
  1. program test;
  2.  
  3. {$mode fpc}
  4.  
  5. var
  6.   n: integer;
  7.   i: integer;
  8.   a: pinteger; // указатель целого типа
  9. begin
  10.   Write('Input n: ');
  11.   ReadLn(n);
  12.  
  13.   // выделям область памяти достаточную для хранения n элементов типа integer
  14.   GetMem(a, n * sizeof(integer));
  15.  
  16.   // заполняем массив цифрами от 1 до n(индексация в динамическом массиве начинается с 0)
  17.   for i:= 0 to n-1 do
  18.     a[i]:= i+1;
  19.  
  20.   // выводим массив на экран
  21.   for i:= 0 to n-1 do
  22.     WriteLn(a[i]); // можно записать и так WriteLn((a+i)^);
  23.  
  24.   // освобождаем память
  25.   FreeMem(a);
  26.  
  27.   ReadLn;
  28. end.

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

  1. Программа запрашивает у пользователя ввод числа n.
  2. Затем программа выделяет память под массив целых чисел типа integer, размером n*sizeof(integer).
  3. И заполняет этот массив числами от 1 до n (индексация в динамическом массиве начинается с 0).
  4. После этого программа выводит на экран все элементы массива.
  5. В конце программа освобождает память, которую занимал массив.
  6. И ожидает ввода пользователя, чтобы закрыть программу.

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


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

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

11   голосов , оценка 3.727 из 5

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

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

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