Király Gyula: Programozás Quick-Basic nyelven
|
9. lecke TÖBBSZÖRÖS ELÁGAZÁS – MENÜ
Az előző leckében megtanultuk, hogyan lehet a program futását tetszés szerinti helyről a GOTO utasítás segítségével folytatni. A GOTO utasítást csak IF… THEN szerkezetben alkalmazzuk, vagyis meghatározott feltétel teljesülése esetén végezzen ugrást a program. Abban az esetben, ha többszörös választási lehetőséget kínálunk fel, az INPUT eredményét elemezve több helyen is folytathatjuk a program futását. Ekkor többszörös elágazási lehetőséget kell teremtenünk. A programnak azt a részét, amely a választási lehetőségeket fölkínálja, menü-nek nevezik.
1. feladat Készítsünk programot, amely a kör kerületét és területét számítja ki! Megoldás:Ezt a programocskát csak azért készítettük, hogy lehetőségünk legyen egy nagyobb, összetett programot írni ennek, és a már elkészített „Négyzet” és „Kocka” programnak a felhasználásával.
2. feladat Írunk egy programot „Mértan” címmel, amely 3 lehetőséget kínál fel: a négyzet, a kör és a kocka számításait.
Megoldás: Ezután INPUT-tal kérjük a választást, majd IF… THEN utasítással értékeljük azokat, úgy, hogy a megfelelő címre küldjük a program futását a GOTO utasítással. A menü szerkezeti így néz ki: Látható, hogy egyes sorokat címkével láttam el, a későbbi ugrások helyének megjelölése céljából. Az első rész a választási lehetőségek kiírása egymás alá. A választási lehetőségeket v$ szöveges változó tartalmazza, számítva arra, hogy nem biztos, hogy valaki csak a számot fogja beírni, hanem esetleg azt, hogy kocka, kör, stb. Az IF… THEN utasítást úgy építettem fel, hogy bármely lehetőséget fogadja el. Az utolsó sorban a GOTO 2 utasítás újabb választást kér, ha a 6 lehetőség közül egyik sem jött be. Ezek után elkészítjük az ugrások célhelyeit: 10-es címkével a négyzet, 20-assal a kocka, 30-assal a kör (már előre elkészített) programrészletet illesztjük be. A programok végére egy újabb GOTO utasítást írunk: GOTO 50, amelynél eldöntjük majd, hogyan folytassuk a programot:
Ha mindhárom ugrási célhelyet bemásoltuk, szerkesszük meg az 50-es címkét. Itt megkérdezzük, hogyan folytassuk a programot („Akarsz tovább számolni [I/N]), a választól függően az 1 címkénél folytatjuk, vagy befejezzük a programot.
GYAKORLÓ FELADATOK1. Egészítsd ki a „MÉRTAN” programot további menüpontokkal (téglalap, téglatest)! 2. Készíts programot, amelyben 5 kedvenc viccedet lehet elolvasni úgy, hogy a program elején menüből választod ki őket!
(Ugrás a Gyakorló Feladatok megoldásához)
|