Portál AbcLinuxu, 3. listopadu 2025 15:54
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#Účelem programu je zkoušet uživatele z násobilky
import random
print("Účelem programu je zkoušeni z násobilky")
prvni_cislo = random.randint(1,10)
print("První číslo je"), prvni_cislo
druhe_cislo = random.randint(1,10)
print("Druhé číslo je"), druhe_cislo
vysledek = prvni_cislo*druhe_cislo
odpoved = input(" ")
if vysledek == odpoved:
print("Tvá odpověď je správná")
if vysledek != odpoved:
print("Špatná odpověď")
Petr
skus se podivat na: http://www.tutorialspoint.com/python/python_while_loop.htm
a pro tohle se používá while ciklus. Rozhodně na to nepoužívej for ciklsu. (Měnit podmínku uprostřed for ciklu je pěkná prasárna)
podminka = True
while podminka:
# telo ciklu
podminka = loop_podminka()
Doufam že kód je správně v pythonu neprogramuji
2) V takovémto případě je IMHO sémanticky vhodnější pattern
while True:
bla bla bla
ble ble ble
if nechciPokracovat: break
podminka = True
while podminka:
# telo ciklu
podminka = loop_podminka()
KeyboardInterrupt vyjimku, kterou vyvola zmacknuti CTRL+C.
Jedna z moznosti jak naimplementovat tvoje zadani je nize.
S pozdravem,
suic
#!/usr/bin/env python3
from random import randint
def navod():
print("""
Účelem programu je zkoušení z násobilky
Pro ukončení aplikace zmáčkněte:
1) Na "Chces pokracovat? " odpovez ne
2) CTRL+C nebo CTRL+D na *Nix a MacOS X
3) CTRL+C nebo CTRL+Break na Windows
""")
def nasobilka(ukaz_navod=True):
if ukaz_navod:
navod()
bye = "\nNashledanou"
zadej_opoved = "Kolik je %s krat %s? "
spravna_odpoved = "Tva odpoved je spravna."
spatna_odpoved = "Spatna odpoved."
neplatny_vstup = "\nNeplatne cislo, zkus to znovu."
pokracovat = "Chces pokracovat? "
error = False
while True:
if not error:
a, b = [randint(1, 10) for _ in range(2)]
exp_res = a * b
try:
error = False
res = int(input(zadej_opoved % (a, b)))
if res == exp_res:
print(spravna_odpoved)
else:
print(spatna_odpoved)
if input(pokracovat).lower() == "ne": # \
print(bye) # bych to zakomentoval
return # /
except ValueError:
print(neplatny_vstup)
error = True
except (KeyboardInterrupt, EOFError):
print(bye)
return
if __name__ == '__main__':
nasobilka()
#!/usr/bin/python# -*- coding: utf-8 -*-print ("Zadej první číslo, které násobit")prvni = input (" ")print ("Zadej druhé číslo")druhe = input (" ")vysledek = prvni*druhevysledek = prvni * druheprint ("Výsledek je"), vysledekprint ("chceš pokračovat 1 ano 2 ne ")otazka = input (" ")print ("Tvoje odpověď byla"),otazkawhile (otazka == 1):print ("Zadej první číslo, které násobit") prvni = input (" ") print ("Zadej druhé číslo") druhe = input (" ") vysledek = prvni*druhe vysledek = prvni * druhe print ("Výsledek je"), vysledek print ("chceš pokračovat 1 ano 2 ne ") otazka = input (" ") print ("Tvoje odpověď byla"),otazka if otazka == 2: print ("Končíme")
# -*- coding: utf-8 -*-
class Matikar:
def __init__(self):
self.cinitel1=0
self.cinitel2=0
def zostav_ulohu(self):
import random
self.cinitel1 = random.randint(1,10)
self.cinitel2 = random.randint(1,10)
def otestuj_ma(self):
print "Prve cislo je",self.cinitel1
print "Druhe cislo je",self.cinitel2
odpoved = raw_input("Aky je sucin? ")
if int(odpoved) != self.cinitel1 * self.cinitel2:
return False
return True
def daj_sancu_skoncit(self):
print "Mas uz dost?"
odpoved = raw_input("ano/nie\n")
if odpoved == "ano":
return False
else:
return True
def main():
while True:
matikar = Matikar()
matikar.zostav_ulohu()
if matikar.otestuj_ma():
print "Spravne, si borec!"
else:
print "Nespravne
"
if not matikar.daj_sancu_skoncit():
break
if __name__ == "__main__":
main()
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.