Переделать программу так, чтобы пользователь вводил максимальный размер массива - Turbo Pascal

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

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

Помогите переделать программу так, чтобы пользователь вводил максимальный размер массива n

Решение задачи: «Переделать программу так, чтобы пользователь вводил максимальный размер массива»

textual
Листинг программы
type arrA=array of byte;
     arrNumbers=array of byte;
var a:arrA;
    b:arrNumbers;
    count,numb:byte;
    n:integer;
procedure randomArr(var a:arrA);
  var i:byte;
  begin
  writeln('Введите размер массива');
  readln(n);
  setlength(a,n);
    randomize;
    writeln('Ishodniy massiv');
    for i:=0 to n-1 do
      begin
        a[i]:=random(10);
        write(a[i]);
      end;
    writeln;
  end;
procedure search(a:arrA;var numb:byte;var count:byte);
  var i:byte;
  begin
  setlength(b,10);
    for i:=0 to 9 do
      b[i]:=0;
    for i:=0 to n-1 do
      inc(b[a[i]]);
    count:=0;
    for i:=0 to 9 do
      if b[i]>count then
        begin
          count:=b[i];
          numb:=i;
        end;
      end;
procedure output(numb:byte;count:byte);
begin
write('Naibolee chasto vstrechaetsya eliment ',numb,' ',count,' raz');
readln;
end;
begin
randomArr(a);
search(a, numb, count);
output(numb,count);
end.

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

  1. Создаются два типа данных: arrA и arrNumbers.
  2. Создаются переменные a, b, count и numb типа arrA и одна переменная n типа integer.
  3. Создается процедура randomArr, которая принимает в качестве параметра arrA и выполняет следующие действия:
    • запрашивает у пользователя размер массива;
    • устанавливает длину массива a в n;
    • инициализирует генератор случайных чисел;
    • выводит сообщение Ishodniy massiv;
    • заполняет массив a случайными числами от 0 до 9 (предполагается, что это максимальное значение для типа byte);
    • выводит сообщение Ishodniy massiv снова.
  4. Создается процедура search, которая принимает в качестве параметров arrA, numb и count. Она выполняет следующие действия:
    • устанавливает длину массива b в 10;
    • инициализирует переменные count и numb;
    • проходит циклом по всем элементам массива a;
    • увеличивает значение count каждый раз, когда встречается число, большее текущего значения count;
    • после завершения цикла выводит сообщение Naibolee chasto vstrechaetsya eliment;
    • выводит сообщение Naibolee chasto vstrechaetsya eliment с указанием найденного значения count.
  5. Создается процедура output, которая принимает в качестве параметров numb и count. Она выполняет следующие действия:
    • выводит сообщение Naibolee chasto vstrechaetsya eliment;
    • выводит сообщение Naibolee chasto vstrechaetsya eliment с указанием найденного значения count.
  6. Выполняется последовательность действий:
    • вызывается процедура randomArr(a);
    • вызывается процедура search(a, numb, count);
    • вызывается процедура output(numb,count);
    • выводится сообщение Naibolee chasto vstrechaetsya eliment;
    • выводится сообщение Naibolee chasto vstrechaetsya eliment с указанием найденного значения count.

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


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

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

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