26.2.. Napisati aplikaciju za provjeru pamćenja viđenog četverocifernog broja. Opis rješenja: Program provjerava sposobnost igrača da pogađa brojeve. Korisnik sa tastature upisuje broj. Sa 10 pokušaja treba pronači slučajno generisani broj. . Evidenciju o uspješnosti pogađanja vodi i ispisuje računar. Primjenjuje se binarno pretraživanje interval (poloviona intervala). Računar tokom igre pomaže ispisom u kom intervalu se nalazi slučajno generisani broj. . Opis programa: Glavni program poziva potprograme za postavljanje početnih vrijednosti te izbor broja i provjeru odgovora. Pp 300 generiše slučajan broj C = INT(900 * RND(1)) + 100 ( vidi dodatak za RND naredbu). Zatim se izvodi provjera tačnosti odgovora u pp 100. Listing programa:
REM 26011110
# POGADJANJE BROJA
import random # omogucuje generisanje novog broja pri svakom startanju programu
def provjeraOdgovora # Provjera odgovora
REM PRINT "Zapamti broj "; C
for i in range(1, 11): # broj pokusaja
print("Redni broj= "; j; " otkucaj broj ")
INPUT r
# provjera racnositi upisanog broja, korisnik moze 2 puta da pogadja
IF r = C THEN t = t + 1: PRINT "TACNO": RETURN
IF r > C THEN PRINT "manji"
IF r < C THEN PRINT "veci"
NEXT j
bg = bg + 1: PRINT "POGRESNO ispravan broj je "; C: # korsnik nije pogodio
180 PRINT "Od "; t + bg; " brojeva "; t; "je pogodjeno, a "; bg; "nije"
190 RETURN
def pocetneVrijednosti # Pocetne vrijednosti
PRINT TAB(10);: PRINT "POGADJANJE BROJA"
PRINT TAB(10);
for i in range(1, 16):
PRINT "-";
NEXT j
PRINT
t = 0: bg = 0: # pocetne vrijednosti brojaca
RETURN
def slucajanBroj # Slucajan broj
c = random.randint(100, 999 + 1) # generisanje cetverocifren broj
return
# Glavni program
pocetneVrijednosti # pocetne vrijednosti
30 slucajanBroj # slucajn broj
provjeraOdgovora # provjera odgovora
INPUT "Hoces li jos (/N)"; da$
IF LEFT$(da$, 1) <> "N" THEN GOTO 30
STOP
Daljnji rad: Probajte napisati sljedeće programe: Ispis na ekranu:
|
||||||
|