Предмет: Информатика, автор: airlavine67

Очень срочно, пожалуйста. Python. 20 Балов!
Модифицируйте игру Камень-Ножницы-Бумага, которую мы делали на уроке.
Теперь вместо игрока, будет играть второй компьютер!

На вход программа принимает количество партий, которые сыграют компьютеры.
Результатом будет строка, в который выводится счет и какой из компьютеров победил.

Первый компьютер будет выбирать по принципу randint(1,3)

Как сделать так, чтобы второй компьютер всегда выигрывал?
Язык программирования - Python.


valeron9814: есть код который уже написан? кинь плз
airlavine67: Кода игры нет. Его надо написать. :/

Ответы

Автор ответа: itsgest
5

import random

ver = 0

while (ver == 0):

   player = int(input("1 - камень, 2 - ножницы, 3 - бумага. "

                      "Введите цифру: "))

   if (player == 1 or player == 2 or player == 3):

       ver = 1

if player == 1:

   print("Вы выбрали камень.")

if player == 2:

   print("Вы выбрали ножницы.")

if player == 3:

   print("Вы выбрали бумагу.")

comp = random.randint(1, 3)

if comp == 1:

   print("Компьютер выбрал камень.")

if comp == 2:

   print("Компьютер выбрал ножницы.")

if comp == 3:

   print("Компьютер выбрал бумагу.")

# определяем победителя

if player == comp:

   win = 0

if player == 1 and comp == 2:

   win = 1

if player == 1 and comp == 3:

   win = 2

if player == 2 and comp == 1:

   win = 2

if player == 2 and comp == 3:

   win = 1

if player == 3 and comp == 1:

   win = 1

if player == 3 and comp == 2:

   win = 2

if win == 0:

   print("Ничья!")

if win == 1:

   print("Победил игрок!")

if win == 2:

   print("Победил компьютер!")


valeron9814: Саму игру ты написал, только условия не выполнены)
valeron9814: На вход программа принимает количество партий, которые сыграют компьютеры.
valeron9814: сделать так, чтобы второй компьютер всегда выигрывал
Автор ответа: valeron9814
1

Ответ:

import random

pc1 = int()

pc2 = int()

# 1 - Камень, 2 - Ножници, 3 - Бумага

part_numbers = int(input('Введите количество партий: '))

part_number_default = 0

pc1_count = 0

pc2_count = 0

draw_count = 0

while part_number_default != part_numbers:

   rock_paper_scissors = random.randint(1,3)

   guess_pc1 = random.randint(1,3)

   guess_pc2 = random.randint(1,3)

   if rock_paper_scissors == guess_pc1:

       pc1_count +=1

   elif rock_paper_scissors == guess_pc2:

       pc2_count +=1

   elif rock_paper_scissors != guess_pc1 and rock_paper_scissors != guess_pc2:

       draw_count += 1

   part_number_default += 1

# Выводим счет

if pc1_count > pc2_count:

   print('Первый компьтер победил!')

elif pc2_count > pc1_count:

   print('Второй компьютер победил!')

elif pc1_count == pc2_count:

   print('Ничья')

print(pc1_count, ': ', pc2_count, '(Ничей в партиях:', draw_count, ')')

Объяснение:

Выполнены все условия кроме второй компьютер всегда выигрывал( не вижу смысла тогда этой игры) но если нужно то это просто сделать, оставить вывод только выиграша второго пк, убать счет.


maratagakerimovs: import time
import random

yourScore = 0
computerScore = 0
while yourScore < 3 and computerScore < 3:
print('Игрок:',yourScore,'- Компьютер:',computerScore)
playerAnswer = input('Выбирайте: камень/ножницы/бумага')
while playerAnswer != 'камень' and playerAnswer != 'ножницы' and playerAnswer != 'бумага':
playerAnswer = input('Выбирайте: камень/ножницы/бумага')

computerAnswer = random.randint(1,3)
maratagakerimovs: if computerAnswer == 1:
computerAnswer = 'камень'
elif computerAnswer == 2:
computerAnswer = 'ножницы'
elif computerAnswer == 3:
computerAnswer = 'бумага'
maratagakerimovs: if playerAnswer == computerAnswer:
print('Компьютер выбрал', computerAnswer)
print('У вас ничья!')
elif playerAnswer == 'камень' and computerAnswer == 'ножницы':
print('Компьютер выбрал', computerAnswer)
print('Вы победили!')
yourScore += 1
elif playerAnswer == 'ножницы' and computerAnswer == 'бумага':
print('Компьютер выбрал', computerAnswer)
print('Вы победили!')
yourScore += 1
maratagakerimovs: elif playerAnswer == 'бумага' and computerAnswer == 'камень':
print('Компьютер выбрал', computerAnswer)
print('Вы победили!')
yourScore += 1
else:
print('Компьютер выбрал', computerAnswer)
print('Вы проиграли!')
computerScore += 1
maratagakerimovs: вот код
maratagakerimovs: можешь сделать с этим кодом пжжж
Похожие вопросы