0 / 0 / 1
Регистрация: 24.04.2013
Сообщений: 48
1

работа со строкой

07.10.2013, 19:37. Показов 713. Ответов 8
Метки нет (Все метки)

Уже все мозги пропарил 2 день, не могу сообразить(((
В общем стала такая задача...
Пишу игру, смысл которой заключается в том что дается набор букв (какое то слово) и из этого набора букв, нужно создать иные слова..
Например есть набор букв мапокедн из него можно собрать например слова мопед, кед и т.д.
Была мысля преобразовать сказанное слово (например мопед) в массив типа
Array ( [0] =>м[1] =>о[2] =>п[3] =>е[4] =>д)
И потом реализовать поиск каждого элемента массива в заданном наборе букв. Тут как бы все хорошо, но есть одно НО, эта проверка пропускает и слова например мама, хотя в наборе букв, всего одна буква м и одна а
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.10.2013, 19:37
Ответы с готовыми решениями:

Работа с файлами, чтение/работа со строкой
Доброго времени суток. Начал работать с C++ Builder 6. Есть текстовый файл .txt с различными...

Работа со строкой
Ребята подскажите, как можно реализовать изменение части строки, если это возможно на С#....

Работа со строкой
Всем доброго дня! Подскажите такой вопрос. пока не могу разобраться. Есть входная строка - Иванов...

работа со строкой
Result := ''; List := TStringList.Create(); try case GetkeybordReg of 1 :...

8
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
07.10.2013, 19:48 2
Что мешает удалять букву из массива, при использовании?
0
1449 / 357 / 61
Регистрация: 03.04.2010
Сообщений: 2,098
07.10.2013, 19:48 3
Valen_x, после того как подобрали букву, удаляйте ее временно из массива. В каждой итерации цикла, сначала создавайте временный массив, равный Вашему массиву букв, и в этом временном массиве удаляйте используемые буквы.
0
0 / 0 / 1
Регистрация: 24.04.2013
Сообщений: 48
07.10.2013, 19:51  [ТС] 4
Цитата Сообщение от Vlad_IT Посмотреть сообщение
Valen_x, после того как подобрали букву, удаляйте ее временно из массива. В каждой итерации цикла, сначала создавайте временный массив, равный Вашему массиву букв, и в этом временном массиве удаляйте используемые буквы.
Были мысли, но не могу как то это все собрать.. Если не затруднит, пожалуйста, набросайте хоть примитивный пример реализации
0
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
07.10.2013, 19:52 5
В каждой итерации какого цикла?
Слово одно, цикл будет по буквам, нельзя заново создавать массив на каждой итерации.
1
0 / 0 / 1
Регистрация: 24.04.2013
Сообщений: 48
07.10.2013, 19:58  [ТС] 6
Удалять с массива буквы это думал, но как это сформулировать кодом, что то не могу сообразить.. какая то абракадабра в голове получается(

Добавлено через 2 минуты
были еще мысли создать все возможные комбинации из набора букв, и потом сказанное юзером слово искать по этим комбинациям, но это тоже получается что то похожее на бред
0
1178 / 1128 / 94
Регистрация: 31.05.2012
Сообщений: 3,060
07.10.2013, 19:58 7
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
 
$chars = 'мапокедн';
 
$word1 = 'мопед';
$word2 = 'мама';
 
function validate($word, $chars)
{
    $chars = str_split($chars);
    foreach (str_split($word) as $v)
    {
        if (($pos = array_search($v, $chars)) !== false)
            unset($chars[$pos]);
        else
            return false;
    }
    return true;
}
 
echo $word1, ' ', validate($word1, $chars) ? 'да' : 'нет', '<br/>';
echo $word2, ' ', validate($word2, $chars) ? 'да' : 'нет', '<br/>';
1
0 / 0 / 1
Регистрация: 24.04.2013
Сообщений: 48
07.10.2013, 20:04  [ТС] 8
Спасибо!!! Удивили! за 2 минуты реализовали то что не мог два вечера сообразить) Еще раз большее спасибо Вам
0
1449 / 357 / 61
Регистрация: 03.04.2010
Сообщений: 2,098
07.10.2013, 20:13 9
Цитата Сообщение от DrobyshevAlex Посмотреть сообщение
В каждой итерации какого цикла?
Да, согласен, думал тут надо много слов.
Цитата Сообщение от DrobyshevAlex Посмотреть сообщение
Слово одно, цикл будет по буквам, нельзя заново создавать массив на каждой итерации.
У него есть массив
PHP
1
Array ( [0] =>м[1] =>о[2] =>п[3] =>е[4] =>д)
Для каждой итерации цикла создать клон этого массива. Но я не правильно понял задачу, так что это не актуально.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.10.2013, 20:13

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Работа со строкой
Ввести фамилию, имя и отчество как одно данное строкового типа. Определить длину строки и...

Работа о строкой
Подскажите каким методом из такой вот строки вытащить только температуру &lt;div...

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

Работа со строкой
Есть такой сайт, 220vk.com В нём есть текстовое поле, куда нужно вводить айди/домен пользователя....


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.