Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/64: Рейтинг темы: голосов - 64, средняя оценка - 4.86
1 / 1 / 0
Регистрация: 03.02.2022
Сообщений: 174

Написать игру в "камень-ножницы-бумага"

13.02.2022, 08:40. Показов 13492. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
33 Написать игру в "камень-ножницы-бумага" против компьютера.
Запустить игру в бесконечном цикле. Запросить ввод от пользователя (R - камень, S - ножницы, P - бумага). Сгенерировать случайный выбор компьютера. Вывести выбор компьютера. Определить победителя, выведя соответствующую информацию. Спросить пользователя - хочет ли он повторить игру. Если хочет - повторить, не хочет - выйти из цикла.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.02.2022, 08:40
Ответы с готовыми решениями:

Камень, ножницы, бумага
Приветствую господа! Ссылка на задачу: https://stepik.org/lesson/906970/step/3?unit=912512 Задача такая: Kanobu ...

Игра камень ножницы бумага
Я сделал игру камень ножницы бумага, но не могу придумать как сделать так чтобы, пк спросил 'Хотите переиграть', если нажмет да то игра...

КАМЕНЬ, НОЖНИЦЫ, БУМАГА ЧЕРЕЗ ООП
Задание: При помощи ООП и классов создайте программу «Rock, Paper, Scissors» или же «Камень, ножницы, бумага». Ваша задача состоит в том...

3
-2 / 6 / 5
Регистрация: 19.01.2022
Сообщений: 201
13.02.2022, 13:07
Лучший ответ Сообщение было отмечено Romensoh как решение

Решение

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
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("Победил компьютер!")
1
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,707
13.02.2022, 23:11
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import random
#==============================================================================
def greater_RSP(L, R):
    return L + R in ('RS','SP','PR')
#==============================================================================
while True:
    while True:
        user = input('Эна-бена-цо! (R,S,P): ')
        if user in ('R','S','P'):
            break
    print(f'Ваш ход        - {"камень" if user == "R" else "ножницы" if user == "S" else "бумага"}.')
    comp = 'RSP'[random.randint(0,2)]
    print(f'Ход компьютера - {"камень" if comp == "R" else "ножницы" if comp == "S" else "бумага"}.')
    if greater_RSP( user, comp ):
        print('Вы победили!')
    elif greater_RSP( comp, user ):
        print('Победил искусственный интеллект!')
    else:
        print('Ничья!')
    cont = input('Для продолжения игры введите любой символ, для выхода - просто нажмите Enter: ')
    if not cont:
        print('До следующей игры!')
        break
    print()
0
 Аватар для VistaSV30
986 / 330 / 79
Регистрация: 10.04.2012
Сообщений: 1,239
Записей в блоге: 4
14.02.2022, 00:24
Можно, ещё счёт игры вести

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import random
win, g = ['RS','SP','PR'], 'Y'
cg, ca = 0,0
 
print('Начинаем игру! Для выхода из игры введете - N \n (варианты ходов: R, S или P)')
while g != 'N':
    g = input('Ваш ход: ')
    a = 'RSP'[random.randint(0,2)]
    
    if (g+a) in win: 
        cg += 1
        print(f'Выиграл игрок, у компьютера {a}. Счет {cg}:{ca}  (игрок:комп)')
    if (a+g) in win: 
        ca += 1
        print(f'Выиграл компьютер - {a}. Счет {cg}:{ca}  (игрок:комп)')
    if a == g:     print(f'Ничья - {g} и {a}')
        
print(f'\nОбщий счет - {cg}:{ca}  (игрок:комп)\n\n Увидимся! ')
Добавлено через 8 минут
Вместо букв RSP лучше поставить цифры 123
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.02.2022, 00:24
Помогаю со студенческими работами здесь

Камень, ножницы, бумага – мини-игра
Здравствуйте. Решил тренироваться по мини проектам для новичков на сайте...

Зациклить игру Камень, Ножницы, Бумага
как сделать так, что-бы после выйгрыша/проигрыша/ничьей, программа не останавливалась, а заново просила пользователя ввести камень, ножницы...

Делал игру "камень ножницы бумага", но в конце программа не считает счёт, хотя условие для увеличение переменной выполне
import random w = 0 m = 0 int(w) int(m) def game(): w = 0

Камень, ножницы, бумага
написал код для игры КНБ: from random import choice my_choose = computer_choose = choice(my_choose) win =...

Камень-ножницы-бумага
Здравствуйте, задали написать простейшую игру на питоне, я выбрал камень,ножницы,бумага. Все в принципе я сделал, но вот цикл не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru