Код за намиране на думи... |
||||
|
||||
|
|
||||
![]() ![]() |
Хайде сега да Ви видим. Мисля, че ще успеете да ми помогнете. Все пак някой от вас тук претендират, че са професионалисти в PHP.
Но това няма значение. Нека преминем на въпроса. Така опитвам се да направя един код, но не мога да измисля как ще стане работата :D Така да кажем, че имам един квадрат с разбъркани думи. Ето за какво говоря: _________ Р |Л|А|М|Я Г |М|М|Ф|Ъ У|О|Ф|Ю|Р Щ|А|В|О|А Л |К|Н|Ч|Ю _________ Така в тоя квадрат са разбъркани думи. Ето и част от тях: ЧАО, ЧАР, ЧОВКА, НОВАК, НОВА, НОВО, НОВ... и т.н. Тези думи дето са по-горе са в даден масив. Въпроса ми е как да направя код, който да свърже всички възможни думи в този квадрат и да ги изкара на екрана. Като думите както казах по-горе ги търси в масив. А ето и правилата, по които трябва да ги търси. Като се почне от някоя буква няма право да прескача други букви. Трябва по последователност да се свързват думите. :) Та някой ще ми помогне ли с кодче? Мерси... :) |
|||
|
---------------------------
Потребител от: 19.06.08 | Всички уроци от HunteR666 | Всички скриптове от HunteR666 |
||||
|
|
||||
|
||||
|
|
||||
![]() ![]() |
Това което искаш може да се направи не само на php ами на сякакъв език който си пожелаеш. В този сайт май вземаш много от хората на майтап но си грешен. Поразмардай си логиката $array[x][y]..... оставямте да се помъчиш
Нещо говори ли ти тази дума Матрица |
|||
|
Това мнение е редактирано от bgspace на 14.08.2008 13:47
---------------------------
Потребител от: 10.05.07 | Всички уроци от bgspace | Всички скриптове от bgspace |
||||
|
|
||||
|
|
||||
![]() ![]() |
Не мога да го направя на друг език, защото само от PHP разбирам до някъде.
А иначе знам ги тези $array[x][y]. Но колкото и да се опитвах да ги комбиниран. Вкарвах ги в цикъли, но колкото и да се мъчех се не се получава. А пък за мъченето от вчера се мъча да го направя, но не се сещам как ще стане. Успях да направя, да намира думи със всички букви в квадрата, но въпроса ми е да ги намира като ги подрежда през една. Без да пропуска букви. Аз ако знаех как ще стане нямаше да пиша тема, а щях да го направя. За това ако можеш да ми помогнеш с код, можеш да го направиш, защото с това помъчи се, не ми помагаш особено. Както казах мъча се от вчера. Никога ако не съм преди това опитал сам не задавам въпроси по форумите и т.н. П.П: Иначе ето до къде стигнах. Направих си масив, който го разделих на 5 вътрешни масива с по 5 букви във всеки. Ето пример: $bukvi[0][0] = Р; $bukvi[0][1] = Л; $bukvi[0][2] = А; $bukvi[0][3] = М; $bukvi[0][4] = Я; $bukvi[1][0] = Г; $bukvi[1][1] = М; $bukvi[1][2] = М; $bukvi[1][3] = Ф; $bukvi[1][4] = Ъ; ... и т.н. Въпроса ми е как да ги комбинирам!? |
|||
|
Това мнение е редактирано от HunteR666 на 14.08.2008 15:19
---------------------------
Потребител от: 19.06.08 | Всички уроци от HunteR666 | Всички скриптове от HunteR666 |
||||
|
|
||||
|
|
||||
![]() |
Искаш да съставиш възможно най много думи със наличните букви?
Или да създаваш думи като ползваш само съседните букви на текущата буква? Сещам се и за друго, буквите може ли да се повтарят или да се ползват само по-веднъж? С други думи до никъде не си стигнал а искаш решение? Но защо искаш да почнеш с код? |
|||
|
---------------------------
Потребител от: 17.02.05 | Всички уроци от PureEvil | Всички скриптове от PureEvil Liberate Tu Temet Ex Inferis |
||||
|
|
||||
|
|
||||
![]() ![]() |
малко ще ти е трудно бих ти казъл! Ако става дума да ги комбинираш без да проверяваш дали се е получила дума ще стане лесно! Обаче ако тръгнеш да проверяваш дали има такава дума ще ти трябва база данни да сръвняваш дадените символи дали са думи. И то това ще отнеме мнооогоо време, и като не броим това че трябва да намериш база данни с всички думи в БГ езика...
|
|||
|
---------------------------
Потребител от: 20.12.06 | Всички уроци от zipopro | Всички скриптове от zipopro Лъчезар Петров Лечев - 14 - Стара Загора - Уеб Програмист Винчета, болчета гайкии...! |
||||
|
|
||||
|
|
||||
![]() ![]() |
Виж сега всичко не става за 5 минути. Аз за това ти казвам да се поразмърдаш логиката. няма всичк она готово във всеки език ако няма просто трябва да си напишеш собвствена функция за такова сортиране. Не разглеждай масивите като матрици, а като дървета така е по лесно да виждаш каква е информацията в тях (сосбенно ако са н мерни). Само визиолано си ги представяй като матрици в html. Защото двумерния масив в книгите се разгелжда като матрица (как ли би изглеждал 7-дем мерен масив ?). Другото важно нещо, е че тия неща за мен са само губене на време не ми се занимава с тях. Има и такива моменти, че няма кой да ти помогне и няма къде да намериш информация тогава трябва да се справя сам
. Мога да ти дам един пример трябваше ми екстеншън за мозила който да бъде алтернатива на scriptX плъгина (да има същата фунционалност) за ИЕ но нямаше никаде и аз трябваше да си напиша собствен екстеншън. За сега работи добре но има още за какво да се пипне по него. Никой не ми е помагал но понякога се налага да правиш и такива глупости |
|||
|
---------------------------
Потребител от: 10.05.07 | Всички уроци от bgspace | Всички скриптове от bgspace |
||||
|
|
||||
|
|
||||
![]() ![]() |
Цитат от PureEvil@14.08.2008 16:37: Искаш да съставиш възможно най много думи със наличните букви?Или да създаваш думи като ползваш само съседните букви на текущата буква? Сещам се и за друго, буквите може ли да се повтарят или да се ползват само по-веднъж? С други думи до никъде не си стигнал а искаш решение? Но защо искаш да почнеш с код? Ето това е. Като почнем от първата буква скрипта трябва да отходи останалите 4 букви примерно. И да търси от 3 до 5 буквена дума. Като пак повтарям трябва да се използват съседните букви на текущата. Цитат от zipopro@14.08.2008 16:37: малко ще ти е трудно бих ти казъл! Ако става дума да ги комбинираш без да проверяваш дали се е получила дума ще стане лесно! ...Цитат от bgspace@14.08.2008 16:49: Виж сега всичко не става за 5 минути. Аз за това ти казвам да се поразмърдаш логиката. няма всичк она готово във всеки език ако няма просто трябва да си напишеш собвствена функция за такова сортиране...По принцип аз много рядко питам по форумите как да реша даден проблем. До сега доста от тях сам съм си ги решавал. Просто този скрипт ме измъчи и не мога и не мога да го измисля . Явно наистина не си напрягам мозъка достатъчно. |
|||
|
Това мнение е редактирано от HunteR666 на 14.08.2008 17:03
---------------------------
Потребител от: 19.06.08 | Всички уроци от HunteR666 | Всички скриптове от HunteR666 |
||||
|
|
||||
|
|
||||
![]() ![]() |
Порагледай в нета има ход на коня. (Мразя математиката) Това е една задачка за обхождане на шахматната дъска с коня. Самата програмка ти изчислява възможните ходове. Ти искаш нещо подобно (само че да ти изважда думите а не да гледаш броя на обхожданията) може да прегледаш от там как се обхожда квадрата и да си го донаправиш за тебе. Това е една идея от мен. Успех
|
|||
|
---------------------------
Потребител от: 10.05.07 | Всички уроци от bgspace | Всички скриптове от bgspace |
||||
|
|
||||
|
|
||||
![]() |
Нещата са прости:
1. имаш база със думи(не разбирай mysql и т.н. а просто база с данни); 2. Да приемем че имаш двумерен масив: а. Ти си на 00 после месстиш на 01 и от двете букви пробваш дали имаш резултат в базата; а.1. ако имаш продължаваш; а.2. забравяш за тозис лучай и минаваш на б. б. Минаваш на 10 и следваш стъпките подобни, в а. Като това може да се доизмени в зависимост от други условия ако имаш: - да намериш най-кратката дума; - най дългата; - тази която изпозлва най много букви, които не се повтарят; - и т.н.; |
|||
|
Това мнение е редактирано от PureEvil на 14.08.2008 18:22
---------------------------
Потребител от: 17.02.05 | Всички уроци от PureEvil | Всички скриптове от PureEvil Liberate Tu Temet Ex Inferis |
||||
|
|
||||
|
|
||||
![]() ![]() |
@PureEvil нещата не са толкова прости.
Значи ти искаш да търся думите ред по ред. Въпроса е, че те се преплитат. Не е казано, че една дума може да бъде само в $array[0][x]. Една дума може да бъде така: $array[0][1]+$array[1][1]+$array[2][0]. Така ще излезе 3 буквена дума. Разбираш ли. Скрипта трябва да смесва и редовете. Иначе то ако беше ред по-ред... :) |
|||
|
---------------------------
Потребител от: 19.06.08 | Всички уроци от HunteR666 | Всички скриптове от HunteR666 |
||||
|
|
||||
|
|
||||
![]() |
Айде сега седни и си избистри идеята в главата и после я сподели.
Но това което казваш не променя факта, че ти давам работещ алгоритъм. Ако вкараш малко логика и от тебе ще си го развиеш така че да го приложиш при всеки елемент който може да бъде старт за дума. Явно от индекси не разбираш ще ти го дам по просто: Избрал си начало: $array[0][1] следващата буква може да е или $array[1][1] или $array[2][0], да кажем избираш този с индекси 11 до него са: $array[0][1], $array[1][0], $array[1][2] и $array[2][1](евентуално ако броиш и диагоналите стават повече). Да ето получваме трибуквена дума: $array[0][1]+$array[1][1]+$array[1][2] = СОЛ(примерно :)) Така че нещата са просто, но е нужно да се постараеш малко особено ако математика ти куца. Всъщност за решението на задачата ти най-вероятно вече има открит алгоритъм просто трябва да го откриеш ако не ти се мисли. |
|||
|
---------------------------
Потребител от: 17.02.05 | Всички уроци от PureEvil | Всички скриптове от PureEvil Liberate Tu Temet Ex Inferis |
||||
|
|
||||
|
|
||||
![]() ![]() |
@PureEvil тоя пич е само на 18 колкото и да му обясняваш той май изобщо не знае как се обхождат матрици (те нали с е учат във вишата математика) и според мен докато не му се напише кода няма да може да се оправи. Аз въобще не обичам математиката и да ми плащат не се заемам с математика. Който е по наясно с тия неща да му помага
|
|||
|
---------------------------
Потребител от: 10.05.07 | Всички уроци от bgspace | Всички скриптове от bgspace |
||||
|
|
||||
|
|
||||
![]() ![]() |
Споко пичове може да не ми се нахвърляте.
След доста блъскане успях да го направя и Ви благодаря за помоща. П.П: И като съм на 18 какво. Означава, че нямам право да се занимавам с програмиране? |
|||
|
---------------------------
Потребител от: 19.06.08 | Всички уроци от HunteR666 | Всички скриптове от HunteR666 |
||||
|
|
||||
|
|
||||
![]() ![]() |
То си е лесно, стига да знаеш как и какво ти е нужно за това. Също така ако ще има точно определен брой колони и редове ще стане още по-лесно! Въпроса е че ние не знаем за какво ти е и не може да ти обясним цялата работа за какво става дума. Понеже ако смяташ да правиш нещо като програма която търси думи в случайни от код генерирани такива таблици, ще ти е нужна база данни със нсимки Абсолютно всички български думи и след като ги имаш ще трябва да проверяваш всяка дума дали е съвместна или съвпада някъде със дума от база данните(като се има на предвид че база данните, и по-точно българските думи са хиляди) ще ти отнеме цяла вечност само да намериш някаква си сричка че съвпада със сричка от няква си дума... Обясних ти как стоят начините и проблемите при случая където кода е генерирал случайно табличка с букви! Има още мн начини как да използваш този скрипт и за това не може да ти обясним всички проблеми и неща които ти трябват за твоята идея.
|
|||
|
---------------------------
Потребител от: 20.12.06 | Всички уроци от zipopro | Всички скриптове от zipopro Лъчезар Петров Лечев - 14 - Стара Загора - Уеб Програмист Винчета, болчета гайкии...! |
||||
|
|
||||
|
|
||||
![]() |
@zipopro просто нямаш равен. Няма значение за какво му е нужно, няма значение колко са колоните и редовете. Да не говорим пък колко лесно могат да се набави база с нужните думи.
@HunteR666 за колко алгоритъма си чувал? Ако беше чул въобще за тази дума, нямаше да има нужда от толкова много разяснения. @bgspace няма лошо, че е на 18 ... по лошото е че и 14 годишните почват да му дават съвети(разбирам да бяха някакви гении по математика ама ...) Програмирането никога не е било да се знае даден език или езици. Когато осъзнаеш това ще започнеш да програмираш. |
|||
|
---------------------------
Потребител от: 17.02.05 | Всички уроци от PureEvil | Всички скриптове от PureEvil Liberate Tu Temet Ex Inferis |
||||
|
|
||||
| 1 посетител чете тази тема (0 потребители и 1 гост) | |||
|
Активни потребители:
---
|
|||
| |||










Нещо говори ли ти тази дума 

. Мога да ти дам един пример трябваше ми екстеншън за мозила който да бъде алтернатива на scriptX плъгина (да има същата фунционалност) за ИЕ но нямаше никаде и аз трябваше да си напиша собствен екстеншън. За сега работи добре но има още за какво да се пипне по него. Никой не ми е помагал но понякога се налага да правиш и такива глупости