im trying to make a guessing game, user can input the level she wants, if 1 just numbers between 1,9 and if 2 between 10,99 otherwise between 100,99… here is my code:
fals = 0 while fals < 10: if level == 1: x = random.randint(0,9) y = random.randint(0,9) elif level == 2: x = random.randint(10,99) y = random.randint(10,99) else: # Next convert to else x = random.randint(100,999) y = random.randint(100,999) answer = x + y while (guess := input(f'{x} + {y} = ')) != answer: fals += 1 if fals == 3: print(f'{x} + {y} = {answer}') break
problem is when i input 1 or 2 or 3 it always returns a 3digit question like 395 + 341 — anyway the other problem is i want to ask 10 questions and also for each question if user inputs the answer 3 time false, program will give the user correct answer and keep asking other question
Advertisement
Answer
import random fals = 1 while fals <= 10: level = int(input(str(fals)+". Enter level :")) if level == 1: x = random.randint(0,9) y = random.randint(0,9) elif level == 2: x = random.randint(10,99) y = random.randint(10,99) else: # Next convert to else x = random.randint(100,999) y = random.randint(100,999) answer = x + y i = 0 while i < 3: guess = input(f'{x} + {y} = ') if int(guess) == answer: print("Correct") break i += 1 if i == 3: print("Answer ",answer) fals+=1
Hope this code works.