Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 09.02.2021
Сообщений: 2

Делал игру "камень ножницы бумага", но в конце программа не считает счёт, хотя условие для увеличение переменной выполне

09.02.2021, 13:20. Показов 1481. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
import random
 
w = 0
m = 0
int(w)
int(m)
 
def game():
    
    w = 0
    m = 0
    int(w)
    int(m)
 
    print("Что выбрираешь? (1 - камень, 2 - ножницы, 3 - бумага)")
    otvet2 = str(input("Выбор: "))
    print("\n")
    comp_otv1 = random.randint(1,3)
    
    #условия, при которых побеждает игрок
    if otvet2 == "1" and comp_otv1 == 2:
        w += 1
        print(name + " выбрал камень, а Андроид320 ножницы.")
        print(name + " побеждает!") 
        print("")
    elif otvet2 == "2" and comp_otv1 == 3:
        w += 1
        print(name + " выбрал ножницы, а Андроид320 бумагу.")
        print(name + " побеждает!")
        print("") 
    elif otvet2 == "3" and comp_otv1 == 1:
        w += 1
        print(name + " выбрал бумагу, а Андроид320 камень.")
        print(name + " побеждает!")
        print("")
        
    #условия, при которых побеждает бот
    elif otvet2 == "2" and comp_otv1 == 1:
        m += 1
        print(name + " выбрал ножницы, а Андроид320 камень.")
        print("Андроид320 побеждает!") 
        print("")
    elif otvet2 == "3" and comp_otv1 == 2:
        m += 1
        print(name + " выбрал бумагу, а Андроид320 ножницы.")
        print("Андроид320 побеждает!")
        print("")
    elif otvet2 == "1" and comp_otv1 == 3:
        m += 1
        print(name + " выбрал камень, а Андроид320 бумагу.")
        print("Андроид320 побеждает!")
        print("")
        
    #условия нечьи
    elif otvet2 == "1" and comp_otv1 == 1:
        print("Оба выбрали камень.")
        print("Победителя нет!") 
        print("")
    elif otvet2 == "2" and comp_otv1 == 2:
        print("Оба выбрали ножницы.")
        print("Победителя нет!")
        print("")
    elif otvet2 == "3" and comp_otv1 == 3:
        print("Оба выбрали бумагу.")
        print("Победителя нет!")
        print("")
 
        
 
print('Добро пожаловать в игру "Камень, ножницы, бумага!"')
 
print("\n")
 
#ввод имени
print("Давайте решим, как мне вас называть...")
name = input("Введите ваше имя: ")
 
print("\n")
 
print("Привет " + name + "!")
print('Меня зовут Андроид320. И я очень хорошо играю в данную игру!')
 
print("\n")
 
print("Ну что, сыграем? (да или нет)")
otvet1 = input()
 
print("\n")
 
if (otvet1 == "нет") or (otvet1 == "Нет"):
        print('Окей. Напишите "да", как передумаете.')
        while (otvet1 != "да") or (otvet1 != "Да"):
            otvet1 = input()
            if otvet1 == "Да" or otvet1 == "да":
                break
 
elif otvet1 != "да" and otvet1 != "Да" and otvet1 != "нет" and otvet1 != "Нет":
    print("Возможно вы ввели что-то неверно, попробуйте ещё раз!")
    while otvet1 != "да" or otvet1 != "Да" or otvet1 != "нет" or otvet1 != "Нет":
        otvet1 = input()
        if otvet1 == "Да" or otvet1 == "да":
            break
        elif (otvet1 == "нет") or (otvet1 == "Нет"):
            print('Окей. Напишите "да", как передумаете.')
            while (otvet1 != "да") or (otvet1 != "Да"):
                otvet1 = input()
                if otvet1 == "Да" or otvet1 == "да":
                    break
            
print("")
 
print("Начинаем!")
 
won1 = 0
won2 = 0
int(won1)
int(won2)
 
while won1 != 3 or won2 != 3:
    game()
    if w == 1:
        won1 =+ 1
        print("Счёт: " + str(won1) + "/" + str(won2))
    elif m == 1:
        won2 =+ 1
        print("Счёт: " + str(won1) + "/" + str(won2))
    else:
        print("Счёт: " + str(won1) + "/" + str(won2))
        continue 
    print("")
    if won1 == 3 or won2 == 3:
        break
    
if won1 == 3:
    print("По итогам трёх игр победил " + name + "!")
    
elif won2 == 3:
    print("По итогам трёх игр победил Андроид320!")
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.02.2021, 13:20
Ответы с готовыми решениями:

Делаю игру камень-ножницы-бумага Не могу сделать рандом для робота
Делаю игру камень-ножницы-бумага Не могу сделать рандом для робота. Проблема в том, что никаких вводов не нужно, все через buttons 3...

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

Игра "камень ножницы бумага" - организовать общий счет
#include<stdlib.h> #include<windows.h> #include<iostream> #include<conio.h> using namespace std; void main() { ...

1
 Аватар для Semen-Semenich
5237 / 3481 / 1176
Регистрация: 21.03.2016
Сообщений: 8,310
09.02.2021, 17:42
Лучший ответ Сообщение было отмечено LostSckare как решение

Решение

прочитайте еще раз про типы данных и присвоение переменной значений
Python
1
2
3
4
w = 0 # вы сразу задали тип инт
m = 0
int(w)# эти две строки ровным счетом ничего не делают
int(m)
опустим функцию и часть кода он не влияет на следующий участок
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
while won1 != 3 or won2 != 3:
    game()
    if w == 1:
        won1 =+ 1
        print("Счёт: " + str(won1) + "/" + str(won2))
    elif m == 1:
        won2 =+ 1
        print("Счёт: " + str(won1) + "/" + str(won2))
    else:
        print("Счёт: " + str(won1) + "/" + str(won2))
        continue 
    print("")
    if won1 == 3 or won2 == 3:
        break
с чего вы хотите что бы ваши значения m и n менялись? они как были равными 0 так и остались а значить условия в цикле пролетают мимо.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.02.2021, 17:42
Помогаю со студенческими работами здесь

Создать игру "камень, ножницы, бумага" с графическим интерфейсом
Создать игру "камень, ножницы, бумага" с графическим интерфейсом.

100 человек одновременно играют в игру "камень-ножницы-бумага"
100 человек одновременно играют в игру "камень-ножницы-бумага". Какая вероятность того, что только 1 человек станет победителем сразу после...

Составить конечный автомат и таблицу переходов на игру "Камень ножницы бумага"
Помогите составить конечный автомат и таблицу переходов на игру "Камень ножницы бумага"

Написать игру в "камень-ножницы-бумага"
33 Написать игру в "камень-ножницы-бумага" против компьютера. Запустить игру в бесконечном цикле. Запросить ввод от пользователя (R -...

Написать игру "камень, ножницы, бумага"
var play,comp,n:string; a,b,c: integer; begin a:=0; // score player b:=0; // score comp WriteLn('Scissors, stone,...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru