Witam,
Dostałem na lekcji programowania zadanie napisania mini słownika polsko-angielskiego, który definicje słów
przechowywać ma w typie rekordowym, mającym dwa pola : pl i en.
program slowplen;
uses crt;
type TWpis = Record {typ rekord zawierajacy dwa pola : en i pl, przechowujacy polskie slowa i ich angielskie odpowiedniki}
pl : string[20];
en : string[20];
end;
var
slow : TWpis;
slownik : file of TWpis; {definicja pliku}
wybor : byte; {zmienna pomocnicza do obsługi menu}
slowo : string;
procedure Dopisz; {Dopisywanie slow do slownika}
Begin
assign(slownik, 'slownik.dat');
reset(slownik);
WriteLn('Podaj polskie slowo: ');
Read(slow.pl);
WriteLn('Podaj angielski odpowiednik: ');
Read(slow.en);
Write(slownik, slow);
End;
procedure Znajdz; {Wyszukiwanie angielskich odpowiednikow slow}
Begin
assign(slownik, 'slownik.dat');
reset(slownik);
WriteLn('Podaj slowo: ');
ReadLn(slowo);
End;
procedure Wyswietl; {Wyswtietlenie wszystkich slow w slowniku}
Begin
assign(slownik, 'slownik.dat');
reset(slownik);
End;
procedure Zakoncz; {Zakonczenie dzialania programu}
Begin
halt;
End;
BEGIN
ClrScr;
wybor := 0;
WriteLn('***************************************');
WriteLn('* Mini słownik polsko-angielski *');
WriteLn('* 1. Dopisz do slownika *');
WriteLn('* 2. Znajdz angielski odpowiednik *');
WriteLn('* 3. Wyswietl wszystkie slowa *');
WriteLn('* 4. Zakoncz program *');
WriteLn('***************************************');
Read(wybor);
{ case wybor of
1 : Dopisz;
2 : Znajdz;
3 : Wyswietl;
4 : Zakoncz;
end;
ReadLn; }
END.
Program niby działa (chodzi mi o pierwszy punkt), ale wyłącza się tylko jak wpisze 1 i wcisnę Enter.
Mam pytanie : co w tym programie jest nie tak ?
I drugie : jak zrobić wczytywanie z pliku , które odczytuje te hasła (które są w rekordach).
Nie mam pojęcia o co chodzi.