Если вы хотите знать только наибольшее число , вы можете использовать рабочий максимум при чтении чисел в файле.
Как пользователь, вам не нужно знать, сколько чисел в файле. Программа должна определить это.
Я написал небольшой тестовый файл, который называется file1.txt :
9 8 7 6 3 11 17
32 11 13 19 64 11 19 22
38 6 21 0 37
И я читаю только цифры, сравнивая их с Max
. Это все, что вам нужно.
- Нет необходимости читать данные в массив и
- нет необходимости (пытаться) отсортировать данные. Вам нужен только самый высокий номер, верно?
- И пользователю также не нужно знать или вводить количество чисел в текстовом файле.
program ReadMaxNumber;
uses
Crt;
var
Max, Num: Integer;
F: Text;
begin
ClrScr;
Assign(F, 'file1.txt');
Reset(F);
Max := -1;
while not Eof(F) do
begin
Read(F, Num);
if Num > Max then
Max := Num;
end;
Close(F);
Writeln('Maximum = ', Max);
Readln;
end.
Когда я запускаю это, вывод будет таким, как ожидалось:
Maximum = 64