Форум сайта python.su
0
Здравствуйте! Вот написал программку:
#Камень, ножницы, бумага 1.0 print('Камень, ножницы, бумага 1.0') import random total=' ' knb=input('Камень(1), ножницы(2) или бумага(3)? ') comp=random.randint(1,3) if comp==1: comp1="Камень" elif comp==2: comp1="Ножницы" elif comp==3: comp1="бумага" if knb==1 and comp==1: total=int('Ничья!') elif knb==1 and comp==2: total=int('Вы выйграли!') elif knb==1 and comp==3: total=int('Вы проиграли!') elif knb==2 and comp==1: total=int('Вы проиграли!') elif knb==2 and comp==2: total=int('Ничья!') elif knb==2 and comp==3: total=('Вы выйграли!') elif knb==3 and comp==1: total=int('Вы выйграли!') elif knb==3 and comp==2: total=int('Вы проиграли!') elif knb==3 and comp==3: total=int('Ничья!') print("Вы выбрали ",knb, ", компютер выбрал", comp1) print(total)
Офлайн
73
knb=input('Камень(1), ножницы(2) или бумага(3)? ') if knb==1 and comp==1:
import random knb=int(input('Камень(1), ножницы(2) или бумага(3)? ')) comp=random.randint(1,3) print("Вы выбрали ",knb, ", компютер выбрал", comp) if comp>knb or comp == 1 and knb == 3: print ('комп') elif comp == knb: print('ничья') else: print('вы')
Отредактировано marvellik (Авг. 14, 2016 21:20:57)
Офлайн
7
Например вот так:
#!/bin/env python #-*- coding: utf-8 -*- from random import randint DRAW = "Ничья" WIN = "Вы победили" LOSE = "Вы проиграли" STONE, SCISSORS, PAPER = 1, 2, 3 result_dict = {(STONE, SCISSORS): WIN, (SCISSORS, PAPER): WIN, (PAPER, STONE): WIN, (SCISSORS, STONE): LOSE, (PAPER, SCISSORS): LOSE, (STONE, PAPER): LOSE} knb=input('Камень(1), ножницы(2) или бумага(3)? ') comp=randint(1,3) print('Компьютер выбрал: %s' % comp) result = result_dict.get((knb, comp), DRAW) print(result)
Отредактировано Master_Sergius (Авг. 15, 2016 13:33:01)
Офлайн
103
Master_Sergiusздесь можно и обычной логикой обойтись как было в marvellik или
result_dict = {(STONE, SCISSORS): WIN, (SCISSORS, PAPER): WIN, (PAPER, STONE): WIN, (SCISSORS, STONE): LOSE, (PAPER, SCISSORS): LOSE, (STONE, PAPER): LOSE}
import random print('Камень, ножницы, бумага 1.0') s = ('камень', 'ножницы', 'бумага') knb = int(input('Камень(1), ножницы(2) или бумага(3)? ')) - 1 comp = random.randint(0, 2) print("Вы выбрали {}, компютер выбрал {}.\n{}".format( s[knb], s[comp], ('Вы проиграли!', 'Ничья!', 'Вы выиграли!')[((comp + 1) % 3) - knb]))
Отредактировано terabayt (Авг. 15, 2016 14:33:20)
Офлайн