Program działa, tylko po wciśnięciu np. 1 i wyświetleniu napisu INFORMATYKA znów pojawia się informacja z możliwymi opcjami do naciśnięcia, natomiast chciałbym żeby tego nie było.
Program działa dokładnie tak, jak mu nakazałeś, więc jeśli nie napisałeś instrukcji zatrzymujących (głupio brzmi, ale chodzi o ReadLn
żeby czekał na input) to dalej będzie pokazywał listę; Co to ma znaczyć natomiast chciałbym żeby tego nie było? W jakim sensie nie było?
Dodanie pętli repeat przed samą instrukcją case powoduje że np. po naciśnięciu 1 napis INFORMATYKA wyświetla się bez końca.
Jak bez końca...? Testowałeś w ogóle ten kod? Sprawdziłem bo sam nie dowierzałem, ale wyświetla się raz i nie ma prawa wyświetlić się po raz kolejny jeśli znów nie podasz na wejściu 1
, bo przy następnym przejściu pętli ReadLn
znów zatrzymuje program aż do podania kolejnej liczby; Dodanie pętli spowoduje wyświetlanie menu i proszenie o podanie cyfry aż do momentu podania 4
- jeśli usuniesz ją - program wykona się tylko raz (i to nawet nie zauważysz, że się wykona bo od razu po podaniu cyfry i wciśnięciu klawisza Enter
zakończy działanie);
Jeżeli nie chcesz by bo podaniu cyfry z klawiatury menu znów nie wyświetlało się to wyrzuć przed pętlę odpowiednie instrukcje; Jeśli chcesz, żeby się wyświetlało ale żeby wcześniejsza zawartość konsoli została skasowana - użyj ClrScr
z modułu Crt
;