PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018 Внимание! Если программа не работает, обновите версию!
begin var n:=ReadInteger('n='); WriteAllText('MyFile.txt',SeqRandom(n,-99,99).JoinIntoString); var (mn,mx):=(MaxInt,-MaxInt); foreach var line in ReadLines('MyFile.txt') do begin var a:=line.ToIntegers; (mn,mx):=(Min(a.Min,mn),Max(a.Max,mx)) end; Writeln('Cумма min+max = ',mn,'+',mx,' = ',mn+mx); ReadAllText('MyFile.txt').Println // контрольный вывод файла end.
Обьясняется различие в размерах файлов тем, что разные кодировки используют разное кол-во памяти, к примеру обычный *.txt файл хранит просто упорядоченный набор символов, а *.rtf уже хранит такие характеристики как размер шрифта цвет выравнивание и много других параметров. Разные расширения текстовых данных сделаны для хранения максимального кол-ва данных в наименьшем возможном ко-во памяти (txt), и наоборот хранения текста в исходном виде с исходными характеристиками (rtf). Ну а размеры файлов можешь и сам посмотреть сделав эту лабу. Эхх... бывают же ленивые люди(((
Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('n=');
WriteAllText('MyFile.txt',SeqRandom(n,-99,99).JoinIntoString);
var (mn,mx):=(MaxInt,-MaxInt);
foreach var line in ReadLines('MyFile.txt') do begin
var a:=line.ToIntegers;
(mn,mx):=(Min(a.Min,mn),Max(a.Max,mx))
end;
Writeln('Cумма min+max = ',mn,'+',mx,' = ',mn+mx);
ReadAllText('MyFile.txt').Println // контрольный вывод файла
end.
Пример
n= 20
Cумма min+max = -99+71 = -28
62 -72 39 -93 -99 -46 -77 71 -12 13 -89 18 -17 19 -35 -62 30 17 -74 37