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