Форум сайта python.su
#Помогите сделать так, чтобы не всегда создавалось только по
одному призраку, пускай, создается два или три призрака.
[/import random print('GhostGame') print() flag = 'Yes' while flag == 'Yes': userScore = 0 userChoice = 0 doorCount = int(input('Enter the number of door: ')) ghostIndex = 0 while True: for i in range (doorCount): print('__[' + str(i+1)+']__', end = '') print() userChoice = int(input('Choose your door from 1 to ' + str(doorCount)+': ')) ghostIndex = random.randint(1, doorCount) print() print('Ghost is here: ') for i in range (doorCount): if i+1 != ghostIndex: print('__[ ]__', end = '') else: print('__[ X ]__', end = '') print() print('You is here: ') for i in range(doorCount): if i + 1 != userChoice: print('__[ ]__', end='') else: print('__[ O ]__', end='') if userChoice == ghostIndex: break else: userScore += 1 print() print(userScore) print() print('Game over') print('Your score:', + userScore) flag = input('Would you like to play agaim ?' + ' Yes or No ') i = 0]
Офлайн
Спасибо поиграл ))
import random print('GhostGame') print() flag = 'Yes' while flag == 'Yes': userScore = 0 userChoice = 0 doorCount = int(input('Enter the number of door: ')) ghostIndex = [] #1 Создаем список while True: for i in range (doorCount): print('__[' + str(i+1)+']__', end = '') print() userChoice = int(input('Choose your door from 1 to ' + str(doorCount)+': ')) for _ in range(2): #2 Добавляем 2 призраков ghostIndex.append(random.randint(1, doorCount)) print() print('Ghost is here: ') for i in range (doorCount): if i+1 not in ghostIndex: #3 Проверяем результат на вхождение print('__[ ]__', end = '') else: print('__[ X ]__', end = '') print() print('You is here: ') for i in range(doorCount): if i + 1 != userChoice: print('__[ ]__', end='') else: print('__[ O ]__', end='') if userChoice in ghostIndex: #4 Если выбор пользователя пал на значения в списке, выходим. break else: ghostIndex.clear() #5 Убиваем призраков дабы не плодить их на доске userScore += 1 print() print(userScore) print() print('Game over') print('Your score:', + userScore) flag = input('Would you like to play agaim ?' + ' Yes or No ')
Отредактировано spikejke (Июнь 16, 2018 15:37:13)
Офлайн
Спасибо тебе огромное !
Офлайн
Тоже сыграл. Заметил следующие косяки:
1 отсутствие дружелюбия в “интерфейсе”, каждый раз вводить “Yes”, заметьте с большой буквы, чтобы сыграть еще разок.
2 программу легко хакнуть или читить в ней, читайте как кому нравится, вводя номер не существующей двери и постоянно выигрывать.
3 ghost должно генерироваться 2, но если выпадают одинаковые номера, то отображается на экране 1. Думаю, что они не должны тусоваться вместе по стратегическим соображениям Если все же так задумано, то нужно отображать 2 “X” за 1 дверью.
4 ввод числа дверей нужно ограничить, меньше 3 не имеет смысла, более 8 не поместятся на экране.
5 при вводе всякой хрени, игра падает. Не порядок!
Пожелания) по улучшению игры:
игр сыграно может быть несколько, поэтому нужно ввести счетчик игр и вывести в конце лучший счет.
Это все легко исправить, если что могу помочь допилить.
Отредактировано Vladimirv (Июнь 18, 2018 11:49:23)
Офлайн