Составьте подпрограмму формирующую массив - Turbo Pascal

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

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

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

Решение задачи: «Составьте подпрограмму формирующую массив»

textual
Листинг программы
  1. program vector2;
  2.  
  3. const
  4.   n_max=100;
  5. type
  6.   vector=array[1..n_max] of real;
  7. procedure CreateArray(a:vector;var x:vector;n:integer);
  8. var
  9.   i:integer;
  10. begin
  11.   for i:=1 to n do
  12.     x[i]:=a[i];
  13. end;
  14. var
  15.   a,b:vector;
  16.   i,m_max:integer;
  17. begin
  18.   m_max:=1;
  19.   for i:=1 to n_max do
  20.     begin
  21.       a[i]:=random(n_max);
  22.       write(a[i]:8:2);
  23.       if a[i]>a[m_max] then
  24.         m_max:=i;
  25.     end;
  26.   writeln;
  27.   writeln('Max: ',a[m_max]:8:2);
  28.   createarray(a,b,m_max);
  29.   for i:=1 to m_max do
  30.     write(b[i]:8:2);
  31.   readln;
  32. end.

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

В данном коде создается программа vector2, которая использует язык программирования Turbo Pascal. Константа n_max определяет максимальное количество элементов, которое может содержать вектор (массив). Тип vector представляет собой массив, состоящий из чисел типа real. Процедура CreateArray принимает три аргумента: a (изначальный вектор), x (новообразованный вектор) и n (количество элементов для копирования). Она копирует каждый элемент из a в x. Две переменные a и b представляют собой исходный и новый векторы соответственно. Переменная i используется для итерации по каждому элементу вектора. Переменная m_max используется для хранения индекса максимального элемента в векторе a. Цикл for выполняется от 1 до n_max. Внутри цикла генерируется случайное число от 1 до n_max и присваивается элементу a. Затем выводится значение этого элемента. Если текущий элемент больше максимального, то обновляется значение переменной m_max. Затем вызывается процедура createarray, которая создает новый вектор b и копирует в него все элементы из a. Далее происходит вывод значений всех элементов вектора b. Программа заканчивается вызовом функции readln, чтобы прочитать ввод пользователя и завершить работу программы.

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


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

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

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

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

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

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