
součet čísel v číslech
Dobrý den, prosím o info, zda existuje prográmek, který mi sečte kolik jedniček, dvojek, trojek ..... se objeví v číslech např. 145-1248
Moc děkuji!
Dobrý den, prosím o info, zda existuje prográmek, který mi sečte kolik jedniček, dvojek, trojek ..... se objeví v číslech např. 145-1248
Moc děkuji!
Předmět | Autor | Datum |
---|---|---|
https://www.browserling.com/tools/letter-frequency Wikan 30.07.2019 12:46 |
Wikan | |
super, moc děkuji! Ludvík01 30.07.2019 13:00 |
Ludvík01 | |
je to jednoduché (i naskriptovat).
možné přístupy:
1. procedurální hledací : stačí ve vstupním poli… baffon 30.07.2019 18:04 |
baffon | |
Zajisté existuje. Prakticky kdekoli se učí programování, tak je takovýchto a podobných plno. poslední Henonee 30.07.2019 18:48 |
Henonee |
Zpět do poradny Odpovědět na původní otázku Nahoru
https://www.browserling.com/tools/letter-frequency
super, moc děkuji!
je to jednoduché (i naskriptovat).
možné přístupy:
1. procedurální hledací : stačí ve vstupním poli vyhledat výskyt jedničky od začátku do konce, a pokaždé zvýšit čítač pro znak 1
2. objektový map-reduce: rozsekat vstup do pole znaků, zavolat funkci partition, případně group_by a u vybraných znaků u příslušných skupin zavolat jen funkci na délku pole
3. pomocí regexp: v řetězci použít funkci preg_match_all a opět vrátí pole symbolů (resp. vícerozměrné pole), délka pole pro odpovídající znaku bude odpovídat počtu výskytů. Lze případně použít preg_match_callback nebo rozmyslet, zda volat jednou s patternem [0-9] a až pak třídit a nebo volat pro každou číslici zvlášť
možná by to chtělo upřesnit co je zač "v číslech např. 145-1248", jestli jde o řetězec, matematický výraz, nebo rozsah čísel.
A jako vždy záleží na tom ,jestli je to domácí úkol na demonstraci, nebo to má být core algoritmus zaměřený na rychlost a efektivitu a bude pracovat s megabajty dlouhými řetězci.
Zajisté existuje. Prakticky kdekoli se učí programování, tak je takovýchto a podobných plno.