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:
I verzija pogadjanje slucajno generisanog broja
# 26011110
# POGADJANJE BROJA
import random # omogucuje generisanje novog broja pri svakom startanju programu
def slucajanBroj(n): # Slucajan broj
# generisanje cetverocifren broj
return random.randint(1, n)
def pocetneVrijednosti(): # Pocetne vrijednosti
print("POGADJANJE BROJA")
for i in range(1, 16):
print("-", end='')
print()
return
def pronadjiBroj(slBroj, n): # ucitavanje provjeru broja
pokusaj = 0
while(pokusaj != slBroj):
pokusaj = int(input(f'Ucitaj broj u opsegu [1, {n}]: ')) # ucitaj string
if pokusaj < slBroj:
print('Ucitani broj je premal')
elif pokusaj > slBroj:
print('Ucitani broj je prevelik')
print('BRAVO, pronadjen je broj')
return
# Glavni program
n = 10
pocetneVrijednosti() # pocetne vrijednosti
slBroj = slucajanBroj(n) # generisanje slucajanog broja u opsegu [1 do n ]
print("slucajan broj", slBroj)
print (slBroj)
pronadjiBroj(slBroj, n) # ucitavanje provjeru broja
II verzija ponavljanje za vise broja
# 26011110
# POGADJANJE BROJA
import random # omogucuje generisanje novog broja pri svakom startanju programu
def slucajanBroj(n): # Slucajan broj
# generisanje cetverocifren broj
return random.randint(1, n)
def pocetneVrijednosti(): # Pocetne vrijednosti
print("POGADJANJE BROJA")
for i in range(1, 16):
print("-", end='')
print()
return
def pronadjiBroj(slBroj, n): # ucitavanje provjeru broja
pokusaj = 0
while(pokusaj != slBroj):
pokusaj = int(input(f'Ucitaj broj u opsegu [1, {n}]: ')) # ucitaj string
if pokusaj < slBroj:
print('Ucitani broj je premal')
elif pokusaj > slBroj:
print('Ucitani broj je prevelik')
print('BRAVO, pronadjen je broj')
return
# Glavni program
n = 10
pocetneVrijednosti() # pocetne vrijednosti
da = 'd'
while (da !='N'): # dok je i != N ponavljaj - pocetak petlje
print ('vratio se')
slBroj = slucajanBroj(n) # generisanje slucajanog broja u opsegu [1 do n ]
print (slBroj)
pronadjiBroj(slBroj, n) # ucitavanje provjeru broja
da = input('Ponovi test /N ') # ucitaj string
Daljnji rad: Probajte napisati sljedeće programe: Ispis na ekranu:
|
||||||
|