Topic: Kombinacijų generavimas

Sveiki, susidūriau su problema, gal kas žinos sprendimą.

Man reikia į masyva įdėti visas kombacijas, nuo 000 iki xxx. x gali but bet koks skaičius. Pavyzdžiui:

x=3, tuomet reikės nuo 000 iki 333

$masyvas[1]=000, $masyvas[2]=001, $masyvas[3]=002, $masyvas[4]=003, $masyvas[5]=010, $masyvas[6]=011, $masyvas[7]=012, $masyvas[8]=013, $masyvas[9]=020, $masyvas[10]=021 ir taip iki $masyvas[kazkoks_indeksas]=333

Gal kas žino kaip tai padaryti?

Re: Kombinacijų generavimas

Na tai pradžiai su ciklais pabandyk :)

3 ciklai, kur kintamasis kinta nuo 0 iki x....

Re: Kombinacijų generavimas

O jei sakykim dydis yra neapibrėžtas ir nurodomas vartotojo? Pavyzdžiui nurodys ne nuo 000 iki xxx, o nuo
00000000 iki xxxxxxxx

Re: Kombinacijų generavimas

Tai tada rekursija :)

Re: Kombinacijų generavimas

Na, pabandysiu. Tik dabar ne itin įsivaizduoju kaip ciklus dėt į rekursiją.

Re: Kombinacijų generavimas

Neigu naudoji rekursiją, tai nereikia ir ciklų (-; tik tiek, kad rekursijos paprastai naudoja daugiau resursų ir prie neapibrėžtų ribų gali pritrūkti atminties (-;