Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Дайте идею

Ответить
Настройки темы
C/C++ - Дайте идею

Пользователь


Сообщения: 147
Благодарности: 0

Профиль | Отправить PM | Цитировать


Вот пишу игру балда поле 5 на 5 ..надо состовлять слова добавляя одну букву..
как осуществить ход компа?=(

Отправлено: 17:39, 24-07-2008

 

Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


DENoszone,
Цитата DENoszone:
как осуществить ход компа?=( »
Сначало нужно сделать словарь слов, к которому программа будет обращаться. Я правильно понял игру?
Код: Выделить весь код
| | | | | |
-----------
| |М| | | | // Здесь буква М делает слово Мышка ?
-----------
|в|ы|ш|к|а|
-----------
| | | | | |
-----------
| | | | | |

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif


Отправлено: 21:26, 24-07-2008 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Пользователь


Сообщения: 147
Благодарности: 0

Профиль | Отправить PM | Цитировать


да ...
словарь есть...
загнал его в масив..
сделал ход...
человек с человеком уже можно играть .
а вот с компом...трудная задача=(
не могу придумать алгоритм поиска слова

Отправлено: 21:30, 24-07-2008 | #3


Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


DENoszone, Тогда нужно создать массив алфавита, и при ходе компьютера, перебирать по одной букве из массива алфавита подставляя букву из алфавитного массива к слову в массиве или сверять на предмет полученного слова со словарём. Ёлки, пока писал подумал, что слова могут идти и наоборот и ломанно... Запутался, честно говоря, не знаю. Но наверняка нужен ещё алфавитным массив. Мы ведь когда играем в эту игру, мысленно подставляем буквы и потом "видим" полученное слово. И ещё точно скажу, поскольку шаг проверяемого слова равен 1 (еденице) или одной букве, то нужно сделать таблицу шагов.
Код: Выделить весь код
   const int row = 5;
   const int column = 5;

   int board[row][column] = { 0 },
        horisontal[2] = { 1, -1 },
        vertical[2] = { -1, 1 };
По принципу, если нужен ход вверх, то по массиву vertical идёт -1, если вниз, то 1, если влево, по массиву horisontal, идёт -1, вправо 1, перебирая полученные варианты. Извините, я дальше не знаю сам.

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif


Отправлено: 22:35, 24-07-2008 | #4


Пользователь


Сообщения: 147
Благодарности: 0

Профиль | Отправить PM | Цитировать


вот такие идеи приходят...
но это не дело..
была идея...выписать все слова возможнные и проверить..
но тоже не то...
а про подстановку букв...это убьет все... 3к способов только в начале

Отправлено: 23:51, 24-07-2008 | #5


Аватара для detrin

Ветеран


Сообщения: 540
Благодарности: 42

Профиль | Отправить PM | Цитировать


Ну по сути от любой буквы есть всего 3 продолжения, что уже достаточно неплохо ограничивает кол-во вариантов перебора.
...
Пока писал придумал другой, как мне показалось более удачный алгоритм. Каждое слово массива разбиваем на составляющие. Пример разбития слова "Слово":
сл
сло
слов
1. Все эти частички запоминаем в новый массив.
2. И при переборе сверяем с нашим новым массивом.
3. Если ничего не найдено то берем другую букву,
____________если найдено - сверяем с основным массивом
_________________________если найдено это и есть искомое слово, но продолжаем набирать буквы.
_________________________если не найдено берем другую букву.
Хоть это и подстановка букв, но имхо должно быстро работать, ведь неверные направления будут достаточно быстро отсекаться еще в начале ветвления.

-------
Лучше ничего не делать, чем делать ничего.


Отправлено: 00:30, 25-07-2008 | #6


Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


DENoszone,
Цитата DENoszone:
а про подстановку букв...это убьет все... »
Нет, вы не поняли, не перебор по буквам, а например слово вышка перебираем от буквы ышка, начиная с А - Аышка, Бышка, Вышка ... Пышка. и т.д. Если в этом случае слова в словаре нет, то переходим ко второй букве: Ы, к третьей Ш. Как только слово найдено, создаём динамический массив, куда будет найденное слово сохраняться, чтобы потом не перебирать заново все варианты, а брать уже из найденного ранее и сохранённого. Правда как это реализовать я не знаю.

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif

Это сообщение посчитали полезным следующие участники:

Отправлено: 00:34, 25-07-2008 | #7


Пользователь


Сообщения: 147
Благодарности: 0

Профиль | Отправить PM | Цитировать


вот это сейчас и буду пытатся делать.

Отправлено: 08:03, 25-07-2008 | #8



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Дайте идею

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Дайте скриншотов Alex-Rexy Проект WinStyle 9 29-08-2009 12:39
[решено] Дайте идею по управлению записей. php. input type="image" Artem-Samsung Вебмастеру 4 09-05-2009 15:06
Please Дайте ссылку davzer789 Видеокарты 8 01-07-2008 10:27
дайте совет Adilhan Хочу все знать 11 11-10-2007 21:03
Дайте совет Tilion Сетевые технологии 3 31-03-2005 17:27




 
Переход