Advertisement
Guest User

professor.py 2

a guest
Nov 10th, 2023
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.38 KB | None | 0 0
  1. import random
  2. import sys
  3.  
  4. def main():
  5.     lvl = get_level("Level: ")
  6.     bodovi = 0
  7.     for broj in range(10):
  8.         try:
  9.             x = generate_integer(lvl)
  10.             y = generate_integer(lvl)
  11.         except ValueError:
  12.             sys.exit()
  13.         izraz = f"{x} + {y} = "
  14.         zbir, bod = get_int(x + y, izraz)
  15.         if bod == 0:
  16.             print(izraz, zbir)
  17.         bodovi += bod
  18.     print(f"{bodovi}/10")
  19.  
  20.  
  21.  
  22. def get_int(suma, expression):
  23.     n = 0
  24.     while n < 3:
  25.         try:
  26.             if suma == int(input(expression)):
  27.                 return suma, 1
  28.             else:
  29.                 print("EEE")
  30.                 n += 1
  31.         except(ValueError, TypeError, OverflowError):
  32.             print("EEE")
  33.             n += 1
  34.     return suma, 0
  35.  
  36. def get_level(prompt):
  37.     while True:
  38.         try:
  39.             number = input(prompt)
  40.             number = int(number)
  41.             if number in [1, 2, 3]:
  42.                 return number
  43.             else:
  44.                 raise ValueError
  45.         except(ValueError, TypeError, OverflowError):
  46.             pass
  47.  
  48. def generate_integer(level):
  49.     if level == 1:
  50.         return random.randint(0, 9)
  51.     elif level == 2:
  52.         return random.randint(10, 99)
  53.     elif level == 3:
  54.         return random.randint(100, 999)
  55.     else:
  56.         raise ValueError
  57.  
  58.  
  59.  
  60. if __name__ == "__main__":
  61.     main()
  62.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement