Skocz do zawartości
Forum komputerowe PC Centre
silenth

Turbo Pascal problem z procedurą

Rekomendowane odpowiedzi

Witam,

mam problem z pewnym fragmentem programu

otóz mam plik

w którym

 

Kod:

recc=record

tytul, autor, status, sygnatura :string

end;

ksiazki=file of recc;

var

ff:ksiazki;

r:recc;

 

 

 

Teraz, gdy mam stworzoną listę książek, użytkownik

wypożycza książke po czym po jakimś czasie pragnie ją oddac

 

prosiłbym o procedure oddawania książek

 

oraz

o procedurę

usuwania książki z księgozbioru (ustawianie książki na ostatniej pozycji po czym usunięcie ostatniego elementu z pliku)

-----przy uwzględnieniu, że r.status='' (łańcuch pusty);-----

(przy wypozyczaniu książki status zmienia się na 'wypozyczony', a podczas usuwania książka nie moze byc wypożyczona)

 

z gory dziekuje.

Edytowane przez silenth

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Gość Clamoor

załącz całosc kodu, szczególnie z funkcją pożyczania

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Mam problem z procedurą która polega na wypożyczaniu książki z biblioteki

niżej podaje dane które są potrzebne do niej

problem polega na tym iż jeżeli w programie pisze 'Podaj tytuł jaki chcesz wypozyczyc'

(wtedy wpisuje np. Wesele i nic się dalej nie dzieje)

jest to pewnie nie jeden błąd tutaj

 

type

recc=record

imie,nazwisko,login,haslo,identyfikator,pole1,pole2,pole3:string;

 

recc2=record

tytul,autor,status,sygnatura:string;

end;

 

ksiazki=file of recc2;

baza=file of recc;

var

ff:ksiazki;

rr:recc2;

f:baza;

r:recc;

 

procedure wypozyczanie_ksiazki (var ff:ksiazki ; var f:baza);

var

rr:recc2;

r:recc;

tytul,wypozyczona:string;

begin

writeln('podaj tytul ksiazki ktora chcesz wypozyczyc');

readln(tytul);

reset(ff);

reset(f);

while not eof(ff) do

read(ff,rr);

if ((tytul)=rr.tytul) and (rr.status='') then

if r.pole1='' then

begin

writeln('wypozyczyles ksiazke');

rr.status='wypozyczona';

r.pole1:=rr.sygnatura;

end

else

if r.pole2='' then

begin

writeln('wypozyczyles ksiazke');

rr.status:='wypozyczona';

r.pol2:=rr.sygnatura;

end

else

writeln('wypozyczyles ksiazke');

rr.status:='wypozyczona';

r.pole3:=rr.sygnatura;

end

else

writeln('nie mozesz wypozyczyc ksiazki - wszystkie pola sa zajete');

write (ff,rr);

write(f,r);

close(f);

close(ff);

end;

 

w razie czego proszę pisac o coś co przegapiłem lub nie dałem wszystkich informacji

dzieki

Edytowane przez silenth

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

×
×
  • Dodaj nową pozycję...