Transcript select-case
SELECT-CASE Programiranje PMF Split Copyright Ani Amižić, Branko Žitko 1 QBasic SELECT • SELECT komanda služi umjesto višestrukih IF THEN naredbi u slučaju grananja programa, ovisno o vrijednosti ispitivanog izraza početak v1 var vn v2 Naredbe_1 Naredbe_2 kraj Programiranje Naredbe_n SELECT CASE var CASE v1 Naredbe_1 CASE v2 Naredbe_2 CASE vn Naredbe_n END SELECT PMF Split Copyright Ani Amižić, Branko Žitko 2 QBasic SELECT • Kod ispitivanje izraza se mogu koristiti i ostali operatori uspoređivanja. (<,>,<=,>=,<>) početak <v var >v =v Naredbe_1 Naredbe_2 Naredbe_n SELECT CASE var CASE is > v Naredbe_1 CASE is = v Naredbe_2 CASE is > v Naredbe_n END SELECT kraj Programiranje PMF Split Copyright Ani Amižić, Branko Žitko 3 Vježba QBasic 1. Napravi program koji će uspoređivati dva unesena broja i ovisno o usporedbi ispisati: prvi broj < drugi broj prvi broj = drugi broj prvi broj > drugi broj (koristiti SELECT) 2. Napravi program koji će rješavati kvadratnu jednadžbu (koristiti SELECT) Programiranje PMF Split Copyright Ani Amižić, Branko Žitko 4 Vježba QBasic • Napravi program za igru pogađanja gdje će računalo odrediti neki broj između 0 i 100, recimo 83, a zatim korisnik pokušava pogodit zamišljeni broj i računalo mu odgovara npr. kao što je prikazano u donjoj tablici: RANDOMIZE TIMER BR=INT(RND*100)+1 BR je slučajni broj između 1 i 100 Programiranje Korisnik Računalo 50 Broj je veći 90 Broj je manji 80 Broj je veći 83 Pogodak, broj pokušaja: 4 PMF Split Copyright Ani Amižić, Branko Žitko 5 Primjer INPUT "Unesi dva broja ... ", x1, x2 IF x1< x2 THEN U=1 END IF IF x1= x2 THEN x1 x2 x1 x2 U=2 END IF y x1 x2 x1 x2 IF x1> x2 THEN x x x x U=3 1 2 1 2 END IF SELECT CASE U CASE IS = 1 y = x + x2 CASE IS = 2 y = x * x2 CASE IS = 3 y = x - x2 END SELECT PRINT “Rezultat je : “; y PMF Split Copyright Ani Amižić, Programiranje Branko Žitko 6 ZADACI (dijagram toka i kod programa) 1. 2. 3. 4. 5. Učitati realan broj. Ako je broj nenegativan, ispisati njegov drugi korijen. Ako je negativan, ispisati njegov kvadrat. Učitati dva realna broja. Učitati +, -, * ili / i izvršiti željenu operaciju. Učitati tri broja, pa ispisati najmanji. Potrebno je numeričke vrijednosti triju varijabli a1, a2 i a3 pridružiti varijablama b1, b2 i b3 tako da je b1 b2 b3. Odrediti sjecište dvaju pravaca. Parametre pravaca učitati. Ako sjecište ne postoji, ispisati odgovarajuću poruku. Koordinate sjecišta: x = (b2 - b1) / (a1 - a2) y = a1 · x + b1 Programiranje PMF Split Copyright Ani Amižić, Branko Žitko 7