Найти в типизированном файле число повторяющиеся больше всего раз - Free Pascal
Формулировка задачи:
В типизированном файле записаны символы и числа найти целое число которое повторяется больше всего раз
Помогите написать саму подпрограму нахождения числа
Решение задачи: «Найти в типизированном файле число повторяющиеся больше всего раз»
textual
Листинг программы
- uses Crt;
- const n=10;
- var a:file of char;
- i,t,k:byte;
- c,c1,c2:char;
- begin
- ClrScr;
- Assign(a,'F:\FPC\Program\ABC.dat');
- Rewrite(a);
- for i:=1 to n do
- begin
- Readln(c);
- Write(a,c);
- end;
- Close(a);
- k:=0;
- for c1:='0' to '9' do
- begin
- Reset(a);
- t:=0;
- While not Eof(a) do
- begin
- Read(a,c);
- if c=c1
- then Inc(t);
- if t>k
- then
- begin
- k:=t;
- c2:=c1;
- end;
- end;
- end;
- Writeln;
- if k<2
- then Writeln('Net povtorjajushihcja cisel')
- else Writeln('Cifra ',c2,' povtorjaetsja ',k,' ras');
- ReadKey;
- end.
Объяснение кода листинга программы
- Объявление переменных:
- a: файл для чтения и записи данных
- i, t, k: переменные для хранения количества повторений чисел
- c, c1, c2: переменные для хранения символов
- Очистка экрана и открытие файла ABC.dat для записи
- Запись 10-ти случайно сгенерированных чисел в файл
- Закрытие файла
- Переменная k инициализируется значением 0
- Цикл от 0 до 9 для обработки каждого числа
- Внутри цикла файл открывается для чтения
- В цикле внутри цикла читается каждый символ из файла
- Если текущий символ равен текущему числу, увеличивается значение переменной t
- Если значение t больше значения k, обновляется значение k и сохраняется текущее число в c2
- После окончания внутреннего цикла, файл закрывается
- После окончания внешнего цикла выводится сообщение о числе, которое повторяется больше всего
- Если число повторений меньше 2, выводится сообщение о том, что число не повторяется
- Если число повторений больше или равно 2, выводится сообщение о числе и количестве его повторений
- Программа ожидает нажатия клавиши для завершения работы
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д