|
0 / 0 / 0
Регистрация: 26.02.2020
Сообщений: 17
|
||||||
Игра пигн-понг24.05.2020, 18:09. Показов 4171. Ответов 9
Метки нет (Все метки)
Помогите, пожалуйста!
игра "пинг-понг", в которой два класса (Ping и Pong) уведомляют друг друга о том, был ли отбит мяч (реализовать с использованием датчика случайных чисел). Пара объектов классов Ping и Pong «играют» между собой и выводить на консоль соответствующие сообщения 1) Ping received Pong. 2) Pong received Ping. По окончании игры выводится счет и имя игрока одержавшего победу. Сделали 2 класса, но они работают независимо друг от друга,как совместить их работу?/
0
|
||||||
| 24.05.2020, 18:09 | |
|
Ответы с готовыми решениями:
9
Игра понг Игра пинг-понг
|
|
172 / 91 / 36
Регистрация: 22.05.2020
Сообщений: 308
|
||||||
| 24.05.2020, 19:23 | ||||||
|
Викмп, во-первых, подписка на события друг-друга выполняется так:
0
|
||||||
|
0 / 0 / 0
Регистрация: 26.02.2020
Сообщений: 17
|
|
| 24.05.2020, 21:25 [ТС] | |
|
valker,
Спасибо, не подскажите еще как сделать, что б игра останавливалась и выводила счет. если есть проигравший? У нас просто продолжает дальше перебирать числа и играть
0
|
|
|
172 / 91 / 36
Регистрация: 22.05.2020
Сообщений: 308
|
||
| 24.05.2020, 21:45 | ||
|
Мне так же не совсем понятен сценарий игры. Вы хотите чтобы мяч запускался, затем игроки делали сколько-то ударов (до ошибки), выигравшему записывался на счёт +1 очко и мяч запускался снова в игру. Или как-то иначе? Если так, то не очень понятно, для чего переменные counterPing и counterPong, они ведь считают количество отбиваний мяча, а на счёт игры влияния не оказывают.
0
|
||
|
0 / 0 / 0
Регистрация: 26.02.2020
Сообщений: 17
|
|
| 24.05.2020, 21:53 [ТС] | |
|
valker, каждый раз, когда игрок отбивает +1 очко. Но на этом моменте не знаем как остановить
0
|
|
|
172 / 91 / 36
Регистрация: 22.05.2020
Сообщений: 308
|
|||||||||||
| 24.05.2020, 22:02 | |||||||||||
|
Викмп, вообще, подобная реализация, когда одна функция вызывает другую, а та в свою очередь - снова первую, называется рекурсией. В вашем случае функция Ping.Play вызывает Pong.Play, а Pong.Play вызывает Ping.Play. Делают они это посредством событий.
То есть в коде:
0
|
|||||||||||
|
0 / 0 / 0
Регистрация: 26.02.2020
Сообщений: 17
|
|
| 24.05.2020, 22:21 [ТС] | |
|
valker, то есть просто убрать вызов Otbil?
0
|
|
|
172 / 91 / 36
Регистрация: 22.05.2020
Сообщений: 308
|
||
| 24.05.2020, 22:46 | ||
|
Вообще фраза в вашем исходном сообщении "два класса (Ping и Pong) уведомляют друг друга" она из некоторого задания, или это просто идея? Если первое, то без уведомления в том или ином виде не обойтись. Если же второе, то можно было бы просто реализовать в каждом классе функцию bool MakeTurn() которая бы возвращала false в случае неудачного хода. И внешняя функция (арбитр) имея ссылки на оба объекта Ping и Pong по очереди вызывала функцию MakeTurn то для одного объекта, то для другого, до тех пор пока кто-то из них не вернёт false, попутно подсчитывая очки. Такая схема имеет те преимущества, что игрокам не надо знать о наличии другого игрока (образно, игрок может тренироваться не с "человеком", а с неким "тренажёром), вдобавок ситуация, когда собственные очками занимается третья сторона - арбитр - естественнее ложиться на обычные человеческие представления об отношениях играющих.
1
|
||
|
0 / 0 / 0
Регистрация: 26.02.2020
Сообщений: 17
|
|
| 25.05.2020, 08:50 [ТС] | |
|
valker,
Нет, по заданию так
0
|
|
|
0 / 0 / 0
Регистрация: 23.01.2022
Сообщений: 2
|
|
| 30.10.2022, 16:39 | |
|
То как было доделано это задание?
0
|
|
| 30.10.2022, 16:39 | |
|
Помогаю со студенческими работами здесь
10
Игра пинг-понг
ИГра Пин Понг Игра пинг-понг в Tkinter. Ошибка с отскакиванием объекта Игра Пинг Понг, управляется только одна ракетка Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|