(паскаль) дан текстовый файл, содержащий вещественные числа (положительные и отрицательные) в произвольном порядке. сформируйте массив, содержащий только положительные числа из файла, и найдите наименьшее среди них.
Program filework; var f:text; i, n, count:integer; l:string; arr:array of real; answ:real; begin assign(f, 'C:\Users\HO4HOU_TTaPKuPucT\Desktop\test_file.txt'); // В кавычках путь к файлу reset(f); while not eof(f) do begin readln(f, l); if StrToFloat(l) > 0 then Inc(count); end; SetLength(arr, count); reset(f); i:=0; while not eof(f) do begin readln(f, l); if StrToFloat(l) > 0 then begin arr[i]:=StrToFloat(l); Inc(i); end; end; answ:=arr[0]; for i:=1 to arr.Length - 1 do if arr[i] < answ then answ:=arr[i]; writeln(answ); close(f); end.
P.S. Программа работает с неограниченным числом положительных чисел в файле
var f:text;
i, n, count:integer;
l:string;
arr:array of real;
answ:real;
begin
assign(f, 'C:\Users\HO4HOU_TTaPKuPucT\Desktop\test_file.txt'); // В кавычках путь к файлу
reset(f);
while not eof(f) do begin
readln(f, l);
if StrToFloat(l) > 0 then
Inc(count);
end;
SetLength(arr, count);
reset(f);
i:=0;
while not eof(f) do begin
readln(f, l);
if StrToFloat(l) > 0 then begin
arr[i]:=StrToFloat(l);
Inc(i);
end;
end;
answ:=arr[0];
for i:=1 to arr.Length - 1 do
if arr[i] < answ then answ:=arr[i];
writeln(answ);
close(f);
end.
P.S. Программа работает с неограниченным числом положительных чисел в файле