Переделать программу так, чтобы пользователь вводил максимальный размер массива - 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.
Объяснение кода листинга программы
- Создаются два типа данных: arrA и arrNumbers.
- Создаются переменные a, b, count и numb типа arrA и одна переменная n типа integer.
- Создается процедура randomArr, которая принимает в качестве параметра arrA и выполняет следующие действия:
- запрашивает у пользователя размер массива;
- устанавливает длину массива a в n;
- инициализирует генератор случайных чисел;
- выводит сообщение
Ishodniy massiv
; - заполняет массив a случайными числами от 0 до 9 (предполагается, что это максимальное значение для типа byte);
- выводит сообщение
Ishodniy massiv
снова.
- Создается процедура search, которая принимает в качестве параметров arrA, numb и count. Она выполняет следующие действия:
- устанавливает длину массива b в 10;
- инициализирует переменные count и numb;
- проходит циклом по всем элементам массива a;
- увеличивает значение count каждый раз, когда встречается число, большее текущего значения count;
- после завершения цикла выводит сообщение
Naibolee chasto vstrechaetsya eliment
; - выводит сообщение
Naibolee chasto vstrechaetsya eliment
с указанием найденного значения count.
- Создается процедура output, которая принимает в качестве параметров numb и count. Она выполняет следующие действия:
- выводит сообщение
Naibolee chasto vstrechaetsya eliment
; - выводит сообщение
Naibolee chasto vstrechaetsya eliment
с указанием найденного значения count.
- выводит сообщение
- Выполняется последовательность действий:
- вызывается процедура randomArr(a);
- вызывается процедура search(a, numb, count);
- вызывается процедура output(numb,count);
- выводится сообщение
Naibolee chasto vstrechaetsya eliment
; - выводится сообщение
Naibolee chasto vstrechaetsya eliment
с указанием найденного значения count.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д