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

Камень, ножницы, бумага

30.08.2023, 00:31. Показов 984. Ответов 6

Студворк — интернет-сервис помощи студентам
Приветствую господа!

Ссылка на задачу:
https://stepik.org/lesson/9069... nit=912512

Задача такая:

Kanobu

Наверное, все мы когда-нибудь мечтали выходить из любой схватки победителем. В игре можно использовать чит-коды, в интеллектуальных соревнованиях мельком кидать взгляд в обучающую литературу, в соревнованиях по бегу срезать участок трассы через кусты...

Попробуем создать идеальную программу для неумолимых побед?

Задача: Используя вызов функций, написать программу, которая будет выводить выигрышный вариант в зависимости от вводных данных.

Возьмем самый легкий пример – игра "камень, ножницы, бумага"

Если входные данные камень, то программа должна вывести бумага

Не все так просто – задача именно на вызов функции! Внутри будут спрятаны 3 функции, которые пользователь не увидит.

Скрытые функции:

ka выведет текст: камень

no выведет текст: ножницы

bu выведет текст: бумага

мой вариант решения:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
def ka():
    return 'камень'
 
def no():
    return 'ножницы'
 
def bu():
    return 'бумага'
 
def winner_choice(x):
    if x == ka():
        return 'бумага'
    elif x == no():
        return 'камень'
    elif x == bu():
        return 'ножницы'
 
x = input()
print(winner_choice(x))
Выдает такое сообшение:

Failed test #1 of 3.
Не ошибается тот, кто ничего не делает, нужна еще попытка
Напиши код с использованием вызова функций
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.08.2023, 00:31
Ответы с готовыми решениями:

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

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

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

6
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,707
30.08.2023, 00:42
Dagdarion, вы можете нормально условия задачи процитировать?
0
1 / 1 / 0
Регистрация: 18.03.2023
Сообщений: 60
30.08.2023, 00:46  [ТС]
idealist,
Условия скопировал как есть
и вот так тоже не проходит

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
def ka():
    return 'камень'
 
def no():
    return 'ножницы'
 
def bu():
    return 'бумага'
 
def winner_choice(x):
    if x == ka():
        return bu()
    elif x == no():
        return ka()
    elif x == bu():
        return no()
 
x = input()
print(winner_choice(x))
0
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,707
30.08.2023, 01:02
А так?
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def ka():
    return 'камень'
 
def no():
    return 'ножницы'
 
def bu():
    return 'бумага'
 
x = input('->')
if x == ka():
    print(bu())
elif x == no():
    print(ka())
elif x == bu():
    print(no())
1
1 / 1 / 0
Регистрация: 18.03.2023
Сообщений: 60
30.08.2023, 10:41  [ТС]
idealist,
Ваше решение выдало вот это:
Failed test #1 of 3. Cannot check answer. Perhaps output format is wrong.

Добавлено через 1 минуту
убрал это: '->'
и выдало вот это:

Failed test #1 of 3.
Не растраивайся, попробуй еще
Напиши код с использованием вызова функций
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
30.08.2023, 10:51
Python
1
2
3
4
5
6
7
ka = lambda: 'камень'
no = lambda: 'ножницы'
bu = lambda: 'бумага'
ops = {'бумага': ka, 'камень': no, 'ножницы': bu}
 
 
print(ops[input().lower()]())


Добавлено через 2 минуты
Цитата Сообщение от Dagdarion Посмотреть сообщение
вызов функции
Python
1
2
3
4
5
6
7
8
ka = lambda: 'камень'
no = lambda: 'ножницы'
bu = lambda: 'бумага'
 
def bar(x):
    print({'бумага': ka, 'камень': no, 'ножницы': bu}[x])
 
bar(input().lower())
2
1 / 1 / 0
Регистрация: 18.03.2023
Сообщений: 60
30.08.2023, 13:23  [ТС]
iSmokeJC,
вот это приняли

Python
1
2
3
4
5
6
7
8
9
10
def winner_choice(x):
    if x == 'камень':
        return bu()
    elif x == 'ножницы':
        return ka()
    elif x == 'бумага':
        return no()
 
x = input()
winner_choice(x)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.08.2023, 13:23
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
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 з-ны. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru