Для тестирования программы создайте в папке с ней 3 текстовых файла с целыми числами
- первый с количеством чисел меньше 24
- второй с 24 числами где модуль минимума больше, например самое маленькое число -20, самое большое +15
- третий где модуль минимума меньше, например минимум -5 максимум 15.
uses crt;
const n=24;
var f,g:text;
x,y:array[1..n] of integer;
k,i,j:byte;
nf,ng:string;
mn,mx:integer;
begin
clrscr;
write('Имя файла для чтения: ');
readln(nf);
nf:=nf+'.txt';
assign(f,nf);
{$I-} reset(f); {$I+}
if IOResult <> 0 then
begin
writeLn('Не могу открыть файл ',nf);
writeLn('Работа программы завершена. Нажмите ENTER');
readln;
exit;
end;
k:=0;
while (k<24)and not eof(f) do
begin
k:=k+1;
read(f,x[k]);
end;
if eof(f) and(k<n) then
begin
writeln('В файле ',nf,' нет ',n,' чисел, исправьте файл!');
writeLn('Работа программы завершена. Нажмите ENTER');
readln;
exit;
end;
close(f);
write('Имя файла для записи ');
readln(ng);
ng:=ng+'.txt';
assign(g,ng);
rewrite(g);
writeln('Вектор Х:');
mn:=x[1];
mx:=x[1];
for i:=1 to n do
begin
write(x[i],' ');
if x[i]<mn then mn:=x[i];
if x[i]>mx then mx:=x[i];
end;
writeln;
writeln('Минимум=',mn,' максимум=',mx);
if abs(mn)>abs(mx) then
begin
writeln('Модуль минимума больше модуля максимума');
writeln('Вектор Y:');
writeln(g,'Vektor Y:');
for i:=1 to n div 2 do
begin
y[i]:=x[2*i-1]+x[2*i];
write(y[i],' ');
write(g,' ',y[i]);
end;
writeln;
write('Вектор Y записан в файл ',ng);
close(g);
end
else
begin
writeln('Модуль минимума не больше модуля максимума');
writeln('Вектор Y:');
writeln(g,'Vektor Y:');
for i:=1 to n do
begin
y[i]:=0;
for j:=1 to i do
if odd(j) then y[i]:=y[i]+x[j]
else y[i]:=y[i]-x[j];
write(y[i],' ');
write(g,' ',y[i]);
end;
writeln;
write('Вектор Y записан в файл ',ng);
close(g);
end;
readln
end.