Results 1 to 6 of 6
Thread: çàäà÷êà çàêà÷êà
Hybrid View
-
18th July 2011 21:13 #1Registered User
Join Date: Aug:2006
Location: Bulgaria/Sofia
Posts: 5
çàäà÷êà çàêà÷êà
Çäðàâåéòå,
Îò 3 äíè ñè áëúñêàì ãëàâàòà ñúñ ñëåäíîòî óæ èçãëåæäàùî ìè åëåìåíòàðíî íåùî (ìàé âðåìåòî îò êîåòî íå ñúì ïèñàë êîä ñè êàçâà äóìàòà):
Èñêàì äà íàïðàâà ïðåâîäà÷ îò êèðèëèöà êúì ëàòèíèöà. Ñêðèïò÷å íà perl (òîâà ìè å ùî ãîäå ëåñíî çà ïèñàíå), êîåòî âçèìà êàòî åäèíñòâåí àðãóìåíò -ñòðèíã íà êèðèëèöà (îò 2 äî 30 çíàêà), áåç çíà÷åíèå ìàëêè/ãëàâíè áóêâè. Êàòî èçõîä ñêðèïòà òðÿáâà äà âðúùà âñè÷êè âúçìîæíè êîìáèíàöèè íà äóìàòà íàïèñàíà íà ëàòèíèöà ñ ìàëêè áóêâè (ïðèìåðíî "â" äà ñå òðàíñëèðà êàòî "v" è êàòî "w", "ÿ" êàòî "ia","ja","q","ya" è ò.í. êàòî òîâà ñúîòâåòíî å ïðåäâàðèòåëíî äåôèíèðàíî)
Ïðèìåð:
Âõîä: "ÄúðâåÍèöà"
Èçõîä: "darvenica", "darvenitsa","darvenitza","darwenica","d arwenitsa","darwenitza","dyrvenica","dyr venitsa","dyrvenitza","dyrwenica","dyrwe nitsa","dyrvenitza"...
Åòî êàêâî ñúì ñúòâîðèë äî ìîìåíòà:
Âçèìàì ñòðèíãíà íà êèðèëèöà, ïðåîáðàçóâàì ãî äà å ñúñ ìàëêè áóêâè (ãîòîâà ôóíêöèÿ - lc), ìèíàâàì ñúñ åäèí öèêúë ïðåç ñòðèíãà áóêâà ïî áóêâà, êàòî âñÿêà áóêâà è âèæäàì ASCII êîäà è ñè äåôèíèðàì åäèí switch â êîéòî êàçâàì àêî àñêè êîäà å íàïðèìåð "1072" çíà÷è â ìàñèâà â êîéòî ñúáèðàì íîâèÿ ñòðèíã çàïèøè áóêâàòà "a" ëàòèíñêî.
È äî òóê ñ ëåñíîòî.
Ñòèãíàõ äî ìîìåíòà â êîéòî ñè äåôèíèðàõ åäíà òàáëè÷êà:
"â" -“w,v"
"æ" - "zh,j,g"
"é" - "j,i"
"÷" - "ch,4"
"ø" - "sh,6"
"ù" - "sht,6t"
"ú" - "y,a,u"
"þ" - "ju,iu.yu"
"ÿ" - "q,ja,ia,ya"
È ñå çàìèñëèõ - êàê äà èçâúðòà âëîæåí öèêúë ñ íåèçâåñòåí áðîé öèêëè? Ìîæå áè íÿêàêâà ðåêóðñèÿ?
Ïðèåìàì âñÿêàêâè èäåè, à áèðàòà å âå÷å â õëàäèëíèêà
-
18th July 2011 23:03 #2Registered User
Join Date: May:2008
Location: bguddd
Posts: 108
Ïîÿñíè ìàëêî çà öèêúëà , êàêâî ùå öèêëèø ñ íåãî , ÷å íå ìè ñòàíà ìíîãî ÿñíî.
-
18th July 2011 23:19 #3Registered User
Join Date: Aug:2006
Location: Bulgaria/Sofia
Posts: 5
Àìè ìèñëåõ ñè ïðèìåðíî çà ïðèìåðà ñ "äúðâåíèöà" äà èìàì 3 âëîæåíè öèêúëà
for y=1..3 ( òóê ñúîòâåòíî y=1 ïðè ú="y", y=2 ïðè ú="a", y=3 ïðè ú="u")
for v=1..2 (v=1 ïðè "â"=v, v=2 ïðè "â"=w)
for zh=1..3 (zh=1 ïðè "æ"=zh, zh=2 ïðè "æ"=j "zh=3 ïðè æ=g)
è òóê äà íàïðàâà âñè÷êè êîìáèíàöèè
-
18th July 2011 23:59 #4
Àêî ïðàâèëíî ñúì òå ðàçáðàë, íå ñòàâà ëè äà ñè íàòúï÷åø mapping-à â...map ñòðóêòóðà ñ êëþ÷ äàäåí char è ñòîéíîñò ìàñèâ÷å ñ âúçìîæíèòå ìó òðàíñëèòåðàöèè (ïðèìåðíî, 'ù' -> ['sht', '6t'])? Îòêúäåòî êàòî èòåðèðàø ñòðèíãà, ïðè êîíêðåòíàòà èòåðàöèÿ âçåìàø êúì êàêâî å map-íàò íàñòîÿùèÿ char è âúâ âëîæåí öèêúë âúðõó value-ìàñèâà ãåíåðèðàø âàðèàíòèòå.
Íåùî êàòî:
Code:... for (i = 0; i < string.length(); i++): ch = string.charAt(i); array = map.get(ch); for value in array: ...UD3R|Q9550+1283|4x2 G.Skill@1066|MX500+1002FAEX+640AAKS+ST31 60|RX580-8GB|1841BLT|SS-760XP|Define7|z24i|Edifier S350DB
geniusloci: ÀÌÄ ñå êóïóâà à) àêî ñè áåäåí; á) àêî ñà òå èçëúãàëè; â) àêî ñè áîëåí ôåí?
nope|r.i.p.
-
19th July 2011 08:33 #5Registered User
Join Date: Aug:2006
Location: Bulgaria/Sofia
Posts: 5
È àç òàêà ñè ïðåäñòàâÿì "âúíøíèÿ" öèêúë, âúïðîñà å êàê äà ðåàëèçèðàì "âúòðåøíèòå"
Îáùî âçåòî çàäà÷àòà ñå ñâåæäà äî:
Èìàì 10 ìíîæåñòâà (ïðèìåðíî ìàñèâ îò õåøîâå íà ìàñèâè) ñ èçâåñòíè åëåìåíòè â òÿõ
È âúïðîñà å äà èçêàðàì âñè÷êè âúçìîæíè êîìáèíàöèè (ïî-ñêîðî âàðèàöèè - ðåäà èìà çíà÷åíèå) îò N îò òåçè ìíîæåñòâà:Code:â = {'v','w'} æ = {'zh', 'j', 'g'} é = {'i', 'j'} ö = {'c', 'ts', 'tz'} ÷ = {'ch','4'} ø = {'sh', '6'} ù = {'sht', '6t'} ú = {'y', 'u', 'a'} þ = {'iu', ''ju', 'yu'} ÿ = {'q', 'ia', 'ja', 'ya'}
Ïðèìåðíî îò äóìàòà "ùúðêåë" - N=2 - ìíîæåñòâîòî 'ù' è ìíîæåñòâîòî 'ú'
â 'ù' èìà 2 åëåìåíòà, â 'ú' = 3 åëåìåíòà
Ïðàâà ñè âëîæåí öèêúë êàòî çà âñåêè åëåìåíò îò 'ù' êîìáèíèðàì ñ âñåêè îò 'ú'
for - åëåìåíòè îò 'ù'
for - åëåìåíòè îò 'ú'
è ïîëó÷àâàì - shty, shtu, shta, 6ty, 6tu, 6ta (òóê èäâà è äðóã ïðîáëåì - êàêâî äà ïðàâà ïîñëå, íî òîâà ùå ãî ìèñëÿ êîãàòî ñòèãíà äî òóê)
 ñëó÷àÿ å ëåñíî çíàì ÷å ìíîæåñòâàòà N ñà 2 è èìàì 2 öèêúëà
Êàê äà ðåàëèçèðàì ïî åëåãàíòåí íà÷èí òîâà çà N<=10 ìíîæåñòâà (äà - ìîãà äà ïðåáðîÿ áóêâè÷êèòå è äà íàïèøà åäèí ãðîçåí êîä çà N=1,2,3,4,5,6,7,8,9,10, íî íå ìè õàðåñâà òàêà)?
Âñå ïîâå÷å çàïî÷âàì äà ñè ìèñëÿ çà íÿêàêâà ðåêóðñèÿ.
-
19th July 2011 12:27 #6
Çàäà÷àòà èñêà ðåêóðñèâíî ðåøåíèå - êàêòî ïðàâèëíî ñè íàäóøèë.
Åòî â ïñåâäîêîä:
êàòî ãî âèêàø ñ íåùî êàòîCode:def generator(bg_str, english_str, index): if index >= bg_str.length(): print english_str return cur_char = bg_str[index] for replacement in mappings[cur_char]: generator(bg_str, english_str + replacement, index+1)
Òóê äîïóñêàì, ÷å map-à mappings ñúäúðæà ìàïâàíå äîðè íà ëåñíèòå áóêâè - ò.å. çà 'a' => {"à"}, 'ò' => {"t"}, 'ÿ' => {"ia", "ja", "ya", "q" } è ò.í.Code:generator("ÿéöå", "", 0);
Btw, ïðàâèë ñúì íåùî òàêîâà (áÿõ íàáàðàë åäèí ñïèñúê ñ áúëãàðñêèòå äóìè íà êèðèëèöà, è áÿõ íàïðàâèë ñúîòâåòíèÿ ñïèñúê ñúñ ñúùèòå äóìè íà øëüîêàâèöà, ñúñ âñè÷êèòå âúçìîæíè òðàíñëèòåðàöèè, êàêòî ãè îïèñâàø) - ñïèñúêúò ìîæåø äà íàìåðèø òóê.Åòî òàêà ñå ïëîäÿò òå, êàçâàì ñè àç. Ïîä íîñà òè.
"640K îught to be enough for anybody" - Bill Gates, 1981
Òåñòîâå íà áàòåðèè::Machine specs::Fract::AGG::ÍåÑåÑúðäè×îâå÷å::Baileys::blog::YouTube channel




Reply With Quote
Lenovo ThinkPad 15 èëè IdeaPad 15
5th May 2023, 22:16 in Ìîáèëíè êîìïþòðè