Category: Source in Pascal

Program: Hanojvez.pas
File exe: Hanojvez.exe
Example: Hanojvez.txt
Hra Hanojské veže. Úlohou je premiestniť krúžky z ľavého stĺpa na pravý. Nesmie sa však položiť väčší krúžok na menší. Vždy je možné vziať len jeden krúžok.
Views: 1096x
Program vykresli hanojske veze (procedura Podklad).
Nastavi vsetky portebne premena na default (akt, tah, fin).
A v cykle vycitava klavesnicu.
Ak stlaci 1 az 3 tak testuje ci nieje zdvihnuty kruzok (podmienka akt=0).
Ak nieje vykona sa nasledovne
- Zmaze sa kruzok (procedura Kruzok)
- do premenej akt sa da velkost kruzku
- vykresli kruzok ako zdvihnuty (za procedura Kruzok)
- zavola sa procedura Dalsi tak ktora zvacsi o 1 premenu tah a vypise na obrazovku
Ak je zdvihnuty kruzok znamena ze ho chce polozit a vtedy sa vykona nasledovne
- otestuje sa ci je mozne kruzok polozit (funkcia Vyhovuje)
- ak ano tak sa kruzok zapise do pola kruzkov (premena vez)
- Vykresli sa takto polozeny kruzok (procedura Kruzok)
- zavola sa procedura Dalsi tak ktora zvacsi o 1 premenu tah a vypise na obrazovku
Nakoniec sa v until testuje ci uz presunul vsetky kruzky (funkcia Koniec).
Ak su vsetky presunute alebo stlacil ESC program sa ukonci.
Popis globalnych premenych
- vez - pole 3x8 v ktorom su ulozene pozicie kruzkov
- poc - uchovava pocet kruzkov
- tah - je v nej pocet tahov
- ch - znak na precitanie z klavesnice
- poz - aktualna pozicia kruzku na stlpe
- akt - sirka aktualneho kruzku
- stl - cislo aktualneho stlpu
- fin - ak je true znamena ze program konci
[Run] [Save] [Print] [Send e-mail] |