Тогда добро пожаловать в программирование! Комментарий выше верен - когда вы публикуете сообщение, постарайтесь точно указать c, какую именно проблему вы видите. Облегчает помощь.
С учетом сказанного, я думаю, глядя на приведенный выше код, я могу понять, что вы имеете в виду. При отладке часто бывает полезно просмотреть, как будет работать ваш код:
- вызывается playGame ()
- getUserChoice вызывается с параметром 'rock'
- userChoice присваивается 'Rock' * Примечание в верхнем регистре
- defineWinner вызывается с 'Rock' в качестве userChoice
- 'Rock' не запускает НИКАКИХ операторов if, а defineWinner ничего не возвращает
Итак, выполнив эти шаги, на самом деле довольно легко понять, почему defineWinner не определен при выходе из системы ... он ничего не возвращает. Смысл вашей функции getUserChoice, по-видимому, заключается в стандартизации входных данных. Но эти стандартизованные исходные данные в дальнейшем не используются должным образом. Вы могли бы сохранить эти возможные значения в массиве, а затем вернуть строчные значения из этой функции?
Надеюсь, это поможет - удачи!