Mam problem z napisaniem programu, który zapisze do pliku binarnego zdefiniowanego 40 wartości typu real, a następnie zamieni miejscami pierwszą wartość z ostatnią w tym pliku.
Napisałem coś takiego:
program binarne;
uses crt;
var
v : array[1..40] of real;
f : file of real;
i : longint;
a, b, t: real;
begin
clrscr;
randomize;
assign(f, 'C:\liczby.dat');
rewrite(f);
for i:=1 to 40 do
begin
v[i]:=random(17038);
write(f,v[i]);
end;
t := a;
a := b;
b := t;
seek(f,0);
write(f,a);
seek(f,39);
write(f,b);
read(f, v[i]);
close(f);
end.
Przy próbie uruchomienia wyskakuje błąd disk read error i zaznacza linijkę read(f, v[i]);