Proszę o powiedzenie mi jak poprawić błąd w linijce “procedure zapisz_do_pliku(var t:ksiazki, ilosc_rec);”. Oczywiście nie zwracajcie uwagi na brak instrukcji w bloku głównym.
;/ Kod programu umieść pomiędz znacznikami code! :roll:
aby wyglądał tak jak poniżej!
program recordy_POP;
const
MAX = 100;
type
ksiazka = record
tytul : string;
autor : string;
ilosc_stron : integer;
end;
ksiazki = array[1..100] of ksiazka;
var
plik : file of ksiazka;
//var
//ksiazka : text;
function ilosc_rec(var t:ksiazki) : integer;
var
ilosc, i : integer;
begin
write('Podaj ilosc recordow');
read(ilosc);
for i := 1 to ilosc do
begin
write('Podaj tytul ksiazki: ');
readln(t[i].tytul);
write('Podaj autora: ');
readln(t[i].autor);
write('Podaj ilosc stron: ');
readln(t[i].ilosc_stron);
end;
ilosc_rec := ilosc;
end;
procedure zapisz_do_pliku(var t:ksiazki, ilosc_rec);
var
i : integer;
begin
assign(plik, 'ksiazki.txt');
rewrite(plik);
//try
for i := 1 to ilosc_rec do
Write(plik, ksiazki[i]);
// finally
CloseFile(plik);
end;
begin
end.
Poprawione, pisz strukturalnie - program jest czytelniejszy i wskazuje że ten co pisał rozumie co napisał :
program recordy_POP;
const
MAX = 100;
type
ksiazka = record
tytul : string;
autor : string;
ilosc_stron : integer;
end;
ksiazki_ = array[1..100] of ksiazka;
var
ksiazki : ksiazki_;
plik : file of ksiazka;
//var
//ksiazka : text;
function ilosc_rec(var t:ksiazki_) : integer;
var
ilosc, i : integer;
begin
write('Podaj ilosc recordow');
read(ilosc);
for i := 1 to ilosc do
begin
write('Podaj tytul ksiazki: ');
readln(t[i].tytul);
write('Podaj autora: ');
readln(t[i].autor);
write('Podaj ilosc stron: ');
readln(t[i].ilosc_stron);
end;
ilosc_rec := ilosc;
end;
procedure zapisz_do_pliku(var t: ksiazki_; ilosc_rec: integer);
var
i : integer;
begin
assign(plik, 'ksiazki.txt');
rewrite(plik);
//try
for i := 1 to ilosc_rec do
Write(plik, t[i]);
// finally
CloseFile(plik);
end;
begin
end.