1 / 1 / 0
Регистрация: 24.02.2010
Сообщений: 19
|
|
1 | |
Сделать бридж с применением ООП.10.08.2010, 12:32. Показов 2558. Ответов 23
Метки нет Все метки)
(
Задали мне такую задачу на курсах, но сколько не пытался никак не пойму с чего начать и как двигатся.
Помогите разобраца.
0
|
|
10.08.2010, 12:32 | |
Ответы с готовыми решениями:
23
Динамический массив с применением ООП Написать игру с применением ООП На чем лучше писать программу с применением ООП Создать программу-тест обучалку с применением ООП |
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
|
|
10.08.2010, 12:41 | 2 |
ну для начала нужно определиться что он конкретно будет делать....
0
|
1 / 1 / 0
Регистрация: 24.02.2010
Сообщений: 19
|
|
10.08.2010, 13:23 [ТС] | 3 |
Ну, нужно зашить, скорее всего в двухмерный масив 9х4, все карты.
В main сделать цикл с меню и выводом на экран (текущих карт + "поля боя") можно с применением system ("cls"). Потом поотделять все класы: - клас хранящий в себе текущие карты пользователей и оставшиеся в колоде. - клас отвечающий за "поле боя" и изменяющий набор карт в предидущем класе с использованием логики правил игры берущего данные со следующего класа. - клас выводящий на экран текущие карты с предлогом пользователю выбрать чем ходить, после чего розписать логику для компьютера, затем ходы с картами посылаются в предидущий клас... - клас показывающий всевозможные результаты... Затем в main с кучей функций сделать вывод на экран, меню, всё зашить в цикл. Всё вроде ясно, но когда начинаю делать, ничего не получается...
0
|
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
|
|
10.08.2010, 13:44 | 4 |
Если на Visual Studio писать то можно так:
1. создаешь класс для поля с картами, наследуешь от какого нибудь из оконных классов. переопределяешь функцию OnPaint и пишешь функцию Draw для рисования поля. 2. Определяешь структуры данных, на основании которых будет рисоваться поле и карты на нем. 3. Далее определяешь события при которых будет производиться перерисовка поля (например нажатие кнопки конца хода, захват мышью карты, перемещение мыши над полем и т.д.) Добавлено через 1 минуту Каждую карту лучше всего представить так же окном.
0
|
Почетный модератор
64276 / 47575 / 32739
Регистрация: 18.05.2008
Сообщений: 115,182
|
|
10.08.2010, 13:48 | 5 |
1
|
1 / 1 / 0
Регистрация: 24.02.2010
Сообщений: 19
|
|
10.08.2010, 18:43 [ТС] | 6 |
В бридже есть много разновидностей и даже в разных компаниях присутствуют разные правила...
Но это не главное. Я так понял это Visual C++, я еще не умею делать оконные приложения и к тому же с мышкой... Мне нужно сделать всё в консоли...
0
|
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
|
|
10.08.2010, 20:05 | 7 |
Именно в консоли, вообще без графики?
Ну классы можно сделать такие: 1. Карта 2. Колода 3. Игрок Дальше делаешь цикл, который будет организовывать взаимодействие между экземплярами этих классов.
0
|
1 / 1 / 0
Регистрация: 24.02.2010
Сообщений: 19
|
|
10.08.2010, 21:11 [ТС] | 8 |
Да, без графики... (ну там может шарпики, амперсандики...)
Я не могу понять как сделать колоду... Это 32 инта на карты + 32 буля для проверки есть карта в колоде или нет... не говоря уже про карты игроков... геморойно... И как тасовку сделать??? Сколько мозгую не доходит...
0
|
![]() 5827 / 3478 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
10.08.2010, 21:16 | 9 |
0
|
1 / 1 / 0
Регистрация: 24.02.2010
Сообщений: 19
|
|
10.08.2010, 21:23 [ТС] | 10 |
оО... не знал такого =)))
0
|
3 / 3 / 0
Регистрация: 09.08.2010
Сообщений: 61
|
|
10.08.2010, 22:28 | 11 |
vitaly1981, в Visual Studio реально хорошую карточную игру сделать без постороних прог,DirectX и т.д? и примерно сколько для этого времени понадобится новичку и за сколько времени сделаешь ты?))
1
|
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
|
|
11.08.2010, 07:07 | 12 |
CronoS0
1. Карта свойства: масть, достоинство 2. Колода - содержит массив ссылок типа карты, перемешивание можно сделать используя функции для генерации случайных значений. Алгоритм перемешивания может быть различный, например генерируешь 2 случайных числа от нуля до количества карт в колоде и карты с полученными номерами меняешь местами и так какое то количество раз, можно случайное (только нижнюю границу задай приемлемую). методы: перемешать, выдать верхнюю карту...и т.д. 3. Игрок - содержит массив ссылок типа карты методы: извлечь карту, дополнить картой. 4. Стол - содержит массив ссылок типа карты методы: положить карту, извлечь карту 5. Куча - содержит массив ссылок типа карты, сюда складываются сброшенные карты. методы: положить карту clicksel Конечно можно. При условии что есть все изображения для карт, стола и т.д. , известны все нюансы логики игры, мне на разработку понадобилось примерно день на то что бы накидать саму программу + дня 3 на отладку и тестирование. Новичку понадобится еще изучить механизмы рисования, работу с окнами, ООП и т.д. все зависит от того насколько это новичек. Если хорошо знаешь механизмы ООП, то за неделю при напряженной работе написать возможно, если не знаешь ООП, то тут сроки определить нереально вообще.
0
|
3 / 3 / 0
Регистрация: 09.08.2010
Сообщений: 61
|
|
11.08.2010, 21:49 | 13 |
vitaly1981, знаю ООП учу по самоучителю почти доучил. но я умею создавать только консольные приложения. щас установил visual studio 2005(на диске была просто эта версия,установить новее или на этой тоже напишется игра?)и может подскажешь как разобраться, выучить, как создавать полноценые win32 приложения, мож какойнить самоучитель посоветуешь?
Не по теме: И я убду тебе очень признателен если ты мне свои контактные данные дашь,чтоб если что к тебе можно было обратиться за советом и каждый раз не создавать тему, не боися часто беспокоить не буду люблю во всем сам разбаиратся только когда очень туго будет обращусь)).
0
|
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
|
|
12.08.2010, 06:53 | 14 |
clicksel
Возьми самоучитель по visual studio 2005. На какой версии студии писать разница не сильно большая для начала. Почитай статьи про механизм рисования в окнах, в инете их много и даже с примерами. Не по теме: Ну если что vstl@yandex.ru
1
|
307 / 18 / 4
Регистрация: 01.05.2010
Сообщений: 250
|
|
12.08.2010, 08:47 | 15 |
Могу порекомендовать Charles Petzold "Programming in Windows 95", книжка довольно старая, в обычных магазинах вряд ли найдешь, но в интернет-магазине заказать вполне реально
Не по теме: причем советую именно изучать бумажную версию книги, а не электронную
1
|
3 / 3 / 0
Регистрация: 09.08.2010
Сообщений: 61
|
|
13.08.2010, 00:46 | 16 |
Взял самоучитель Айвор Хортона "Visual C++ базовый курс.",там описывается создание виндовс приложении с помощию MFC и с помощью С++/CLI, какой из этих способов лучше подойдет для карточной игры, что посоветуете?
0
|
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
|
|
13.08.2010, 06:07 | 17 |
clicksel
CLI требует .NET Framework установленный у пользователя, а он 350 Мб весит.... Набери в поисковике "visual c++ рисование в окне" например
1
|
307 / 18 / 4
Регистрация: 01.05.2010
Сообщений: 250
|
|
13.08.2010, 11:11 | 18 |
Я бы на Вашем месте начал с процедурного(а соответственно и простого, но при этом очень мощного) WinAPI, MFC это то же самое, только в объектно-ориентированной обертке и понять СРАЗУ основные концепции будет довольно тяжело, а уж накодить по-быстрому и подавно
![]() p.s. Если с английским дружите, добро пожаловать в лс - скину ссылки на интересные англоязычные сайты по WinAPI
1
|
3 / 3 / 0
Регистрация: 09.08.2010
Сообщений: 61
|
|
13.08.2010, 12:40 | 19 |
тоесть если напишу игру на СLI, чтоб кто-нибудь кроме меня в нее сыграл должен иметь на компе .NET Framework?
0
|
770 / 760 / 59
Регистрация: 06.07.2009
Сообщений: 3,021
|
|
13.08.2010, 21:28 | 20 |
AK3RN WinAPI и MFC это далеко не одно и то же....
Кроме того можно писать программы используя ООП и без MFC. Вы не путайте, ООП это методика построения программ, а WinAPI и MFC это библиотеки для взаимодействия с операционной системой и для упрощения построения программ..... clicksel Именно так, конечно он в Windows 7 он уже встроен, но пользователям Windows XP его придется устанавливать. Я предпочитаю использовать WinAPI и иногда MFC (не все его классы стоит использовать, они тоже косяки имеют)
0
|
13.08.2010, 21:28 | |
Помогаю со студенческими работами здесь
20
Как написать консольную программу Шашки с применением ООП? как сделать решение задачу Access с % с применением вба Игра Бридж бридж и роутер Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |