Spaces:
Sleeping
Sleeping
| import random as r | |
| import gradio as gr | |
| def generate_number(): | |
| while True: | |
| num = [r.randint(1, 9)] + [r.randint(0, 9) for _ in range(3)] | |
| if len(set(num)) == 4: | |
| return num | |
| def play_game(user_guess): | |
| global secret_number | |
| guessed_number = [int(i) for i in user_guess] | |
| if len(set(user_guess)) != 4 or user_guess[0] == '0': | |
| return "Invalid input. Please enter a 4-digit number with non-repeating digits and the first digit not being 0." | |
| cow = sum(g == s for g, s in zip(guessed_number, secret_number)) | |
| bull = sum(g in secret_number and g != s for g, s in zip(guessed_number, secret_number)) | |
| if cow == 4: | |
| return "Congratulations! You won the game." | |
| else: | |
| return f"Bulls: {bull}\nCows: {cow}\nEnter your next guess" | |
| # Generate the secret number | |
| secret_number = generate_number() | |
| def game_response(user_input,identifier=None): | |
| global secret_number | |
| if secret_number is None: | |
| secret_number = generate_number() | |
| return "Welcome to Bulls and Cows game! Try to guess the secret 4-digit number." | |
| response = play_game(user_input) | |
| if "Congratulations!" in response: | |
| secret_number = None # Reset secret number for the next game | |
| return response | |
| # Interface setup | |
| demo = gr.ChatInterface(game_response, examples=["1234", "5678", "9012"]) | |
| if __name__ == "__main__": | |
| demo.launch() |