Top.Mail.Ru
Ответы

Сделать игру на Python

По дате
По рейтингу
Аватар пользователя
Мастер
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
 import random 
 
def display_welcome_message(): 
    print("=======================================") 
    print("         Добро пожаловать в игру      ") 
    print("               Кости!                 ") 
    print("=======================================") 
    print("Правила игры:") 
    print("1. Вы начинаете с 100 очков.") 
    print("2. Сделайте ставку от 2 до 12.") 
    print("3. Если сумма двух костей меньше 7 и ваша ставка меньше 7, вы выигрываете.") 
    print("4. Если сумма двух костей больше 7 и ваша ставка больше 7, вы выигрываете.") 
    print("5. Если вы угадаете точную сумму двух костей, ваши очки увеличиваются в 4 раза.") 
    print("6. Если вы проигрываете, ваши очки уменьшаются на сумму ставки.") 
    print("=======================================") 
 
def play_dice_game(): 
    display_welcome_message() 
     
    player_score = 100 
     
    while player_score > 0: 
        print(f'\nВаши очки: {player_score}') 
         
        while True: 
            try: 
                bet = int(input('Назовите ставку от 2 до 12: ')) 
                if 2 <= bet <= 12: 
                    break 
                else: 
                    print("Неверная ставка! Пожалуйста, выберите число от 2 до 12.") 
            except ValueError: 
                print("Пожалуйста, введите целое число.") 
 
        dice1, dice2 = random.randint(1, 6), random.randint(1, 6) 
        dice_sum = dice1 + dice2 
        print(f'Выброшены кости: {dice1} и {dice2}. Сумма: {dice_sum}') 
 
        if (dice_sum < 7 and bet < 7) or (dice_sum > 7 and bet > 7): 
            player_score += bet 
            print(f'Вы выиграли! Ваши очки увеличены на {bet}.') 
        elif dice_sum == bet: 
            player_score += bet * 4 
            print(f'Вы угадали! Ваши очки увеличены на {bet * 4}.') 
        else: 
            player_score -= bet 
            print(f'Вы проиграли! Ваши очки уменьшены на {bet}.') 
         
        if player_score > 0: 
            continue_game = input('Хотите продолжить игру? (да/нет): ').strip().lower() 
            if continue_game not in ['да', 'yes']: 
                print('Игра завершена. Спасибо за игру!') 
                break 
 
    if player_score <= 0: 
        print('У вас закончились очки! Игра завершена.') 
 
play_dice_game() 
Аватар пользователя
Знаток
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
 import random 
 
def roll_dice(): 
    return random.randint(1, 6) + random.randint(1, 6) 
 
def play_game(): 
    points = 100 
     
    while points > 0: 
        print(f"\nУ вас {points} очков.") 
         
        # Получаем число от игрока 
        while True: 
            try: 
                guess = int(input("Назовите число от 2 до 12: ")) 
                if 2 <= guess <= 12: 
                    break 
                else: 
                    print("Число должно быть от 2 до 12.") 
            except ValueError: 
                print("Пожалуйста, введите целое число.") 
         
        # Получаем ставку 
        while True: 
            try: 
                bet = int(input(f"Сделайте ставку (у вас {points} очков): ")) 
                if 1 <= bet <= points: 
                    break 
                else: 
                    print(f"Ставка должна быть от 1 до {points}.") 
            except ValueError: 
                print("Пожалуйста, введите целое число.") 
         
        # Бросаем кости 
        roll = roll_dice() 
        print(f"Выпало: {roll}") 
         
        # Проверяем результат 
        if (roll < 7 and guess < 7) or (roll > 7 and guess > 7): 
            points += bet 
            print(f"Вы выиграли! +{bet} очков") 
        elif roll == guess: 
            points += bet * 4 
            print(f"Точное попадание! +{bet * 4} очков") 
        else: 
            points -= bet 
            print(f"Вы проиграли. -{bet} очков") 
         
        # Спрашиваем, хочет ли игрок продолжить 
        if points > 0: 
            continue_game = input("Хотите продолжить игру? (да/нет): ").lower() 
            if continue_game != 'да': 
                break 
     
    print(f"\nИгра окончена. Ваш итоговый счет: {points} очков.") 
 
# Запускаем игру 
print("Добро пожаловать в игру 'Кости'!") 
play_game() 


Видео по теме