1 / 1 / 0
Регистрация: 16.07.2012
Сообщений: 40
|
|
1 | |
Камень-ножницы-бумага14.01.2013, 21:36. Показов 9844. Ответов 7
Метки нет Все метки)
(
Составить программу игры "камень, ножницы, бумага",для двух играющих - пользователя и компьютера. Каждый из них должен выбрать один из трех упомянутых предметов. Победитель определяется по правилу: бумага прячет камень; Камень тупит ножницы; ножницы режут бумагу. Компьютер(выбирает) предмет с помощью датчика случайных чисел.
0
|
14.01.2013, 21:36 | |
Ответы с готовыми решениями:
7
Игра "камень ножницы бумага" - организовать общий счет
Камень, ножницы, бумага |
![]() 238 / 237 / 142
Регистрация: 03.02.2011
Сообщений: 1,437
|
|
14.01.2013, 21:43 | 2 |
А в чем проблема? Программу можно просто построить на операторах иф, и сделать функцию которая уже будет выводить результаты в письменном виде.
0
|
1 / 1 / 0
Регистрация: 16.07.2012
Сообщений: 40
|
|
14.01.2013, 23:01 [ТС] | 3 |
не знаю ,как датчик с датчиком случайных чисел работать
0
|
![]() 213 / 202 / 85
Регистрация: 09.05.2012
Сообщений: 494
|
||||||
14.01.2013, 23:16 | 4 | |||||
может генератор случайных чисел, а не датчик?
вот так с ним рабоать:
0
|
![]() 158 / 157 / 81
Регистрация: 31.12.2012
Сообщений: 254
|
||||||||||||||||
15.01.2013, 13:13 | 5 | |||||||||||||||
![]() Решение
Вся программа на одних if
![]()
1
|
101 / 92 / 53
Регистрация: 22.03.2011
Сообщений: 226
|
|
15.01.2013, 13:27 | 6 |
можно заменить если х==у Значит ничья.
0
|
2483 / 1147 / 707
Регистрация: 25.04.2016
Сообщений: 3,294
|
|
25.04.2016, 21:49 | 7 |
Куда более сложный вариант. Имитация механики Fate Extra на psp. Написан под linux с использованием ncurses. Оба участника делают по 6 ходов. В зависимости от выбранной сложности игроку показывается несколько случайных ходов компьютера (или ни одного). Победитель определяется по суммарному числу очков. Полностью исключена проблема ошибочного ввода значений. На скорую руку состряпан интерфейс.
Исходный код и примеры вывода во вложении.
0
|
2483 / 1147 / 707
Регистрация: 25.04.2016
Сообщений: 3,294
|
|||||||||||
26.04.2016, 08:22 | 8 | ||||||||||
Что можно улучшить?
На данный момент в имитации нет проверки на несколько побед, идущих подряд. Иными словами в игре нет дополнительного удара. Как его можно реализовать? Ну, воспользуемся незанятым счетчиком, например k, и во время сравнения ходов игрока и компьютера при каждой победе игрока маниакально увеличивать счетчик на 1, а в случае поражения или ничьей, сбрасывать счетчик в 0. При этом, после каждого увеличения счетчика, проверять не достиг ли он значения 3, т.е. не совершил ли игрок 3 победы подряд. Если да, и k == 3, то вызывать дополнительный удар и сбрасывать счетчик в 0. Например, зададим еще одну функцию int extrahit(void); Эта функция не имеет аргументов, но возвращает некое целое число. Теперь добавим в проверку условий победы игрока строки:
Не трудно догадаться, что стоит в функции extrahit() написать return 0; и мы получим законченный алгоритм. Остается только добавить в проверку условий ничьей и поражения сброс счетчика k=0, ну и задать его перед проверкой. Конечно для игры этого маловато. Ну, что еще можно добавить? Можно в функции дополнительного удара выполнять какую-то анимацию или выводить сообщения на экран, но это и так очевидно. Нужно что-то поинтереснее. Например, добавить проверку на критический удар - воспользоваться правилами настольной DnD и написать такую функцию extrahit():
0
|
26.04.2016, 08:22 | ||||||
Помогаю со студенческими работами здесь
8
камень ножницы бумага Камень, ножницы, бумага
Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
Новые блоги и статьи
![]() |
||||
Сопоставление с образцом (Pattern Matching) в Python: Списки и словари
py-thonny 19.03.2025
Программисты любят, когда код говорит сам за себя. Представьте, что вы можете просмотреть структуру данных и мгновенно понять, что с ней делать — без сложных условий и вложенных проверок. Именно эту. . .
|
Работа с метаданными EXIF и JPEG в JavaScript
run.dev 19.03.2025
Работа с изображениями в веб-разработке нередко выходит за рамки простого отображения картинки. Современные задачи требуют глубокого понимания структуры файлов и умения манипулировать их внутренними. . .
|
Чеклист для Kubernetes в продакшене: Лучшие практики для SRE
Mr. Docker 19.03.2025
Когда сталкиваешься с запуском Kubernetes в продакшене, невольно задаешься вопросом: почему то, что так гладко работало в тестовой среде, вдруг начинает вызывать головную боль на боевых системах?. . .
|
Разработка продвинутого ИИ в Unity с использованием Behavior Graph
GameUnited 19.03.2025
В разработке игр искусственный интеллект персонажей часто становится тем элементом, который превращает хорошую игру в выдающуюся. До недавнего времени разработчикам под Unity приходилось либо писать. . .
|
Словари в Python: методы работы, оптимизация, сериализация
py-thonny 19.03.2025
Каждый хотя бы раз сталкивался с необходимостью хранить связанные данные, где важна не только сама информация, но и их взаимосвязь. В дебрях Python словари — это тот универсальный инструмент, который. . .
|
Реализация паттерна CQRS с Event Sourcing в PHP
Jason-Webb 19.03.2025
CQRS (Command Query Responsibility Segregation) — это архитектурный паттерн, который разделяет операции чтения и записи данных в приложении. Если вы столкнулись с ситуацией, когда ваше PHP-приложение. . .
|
std::span в C++: Подпредставления и срезы
NullReferenced 18.03.2025
Если вы когда-нибудь работали с большими объемами данных в C++, то наверняка сталкивались с необходимостью манипулировать отдельными частями массивов или контейнеров. Традиционные подходы часто. . .
|
std::span в C++: Доступ к элементам и итерирование
NullReferenced 18.03.2025
В C++ каждый разработчик сталкивается с проблемой эффективного управления последовательностями данных. Представьте: вы работаете с массивом, передаете его в функцию, а затем в другую, и каждый раз. . .
|
Утечки памяти в C#
UnmanagedCoder 18.03.2025
Когда мы говорим о разработке приложений на C#, то часто успокаиваем себя мыслью, что сборщик мусора решит все наши проблемы с памятью. "Память управляется автоматически" — эта мантра прочно засела в. . .
|
std::span в C++: Введение в невладеющее представление
NullReferenced 18.03.2025
С появлением стандарта C++20 у нас появился новый инструмент — std::span, который представляет собой невладеющее представление для работы с последовательностями данных.
std::span — это легковесный. . .
|