vyzkoušej tohle, zkoušel jsem to, jdou čísla i písmena a libovolný počty.
(není to moje, je to odchyceno z netu)
kombinování čísel, písmen v excelu - VYŘEŠENO
Moderátor: Moderátoři
- Přílohy
-
- 15826_kombinace-mt5.zip
- (30.11 KiB) Staženo 92 x
........Nedůvěřuji velbloudům a obecně nikomu, kdo dokáže týden nepít........
- PotPalo
- Příspěvky: 4565
- Registrován: 13 kvě 2009, 02:00
- Bydliště: BA-Petržalka :(
- Kontaktovat uživatele:
Hotovo. Môžeš zadať až 100 hodnôt a z nich vybrať 2 až 10 kombinácii. To už je za dve Víney. ![Beer :beer:](./images/smilies/icon_beer.gif)
edit: maličká chybička v súbore opravená o 1:47 menšou zmenou.
![Beer :beer:](./images/smilies/icon_beer.gif)
edit: maličká chybička v súbore opravená o 1:47 menšou zmenou.
- Přílohy
-
- Kombinácie hodnôt.rar
- Vypočítam z množiny údajov všetky kombinácie, pritom sa žiadny údaj neopakuje a na poradí nezáleží.
- (64.95 KiB) Staženo 90 x
Zlu sa neustupuje, proti zlu sa bojuje.
...ten první excel není špatný, ale používá makra, ale ten druhý excel, tak ten je super
díky, díky, díky, a když na něj tak koukám a dívám se, jak to funguje, tak si asi vezmu lopatu někde se s ní zahrabu a budu tam dlouho a dlouho přemýšlet o tom, jak je možný, že sem to nedokázal dát dohromady a navíc to umí i kombinace s použitím víc jak jednoho znaku to jsem na začátku vlastně vůbec nedomyslel a úplně na to zapoměl
...může být i varianta:
X, 1A, JHG, 2, PP, K2, 00 a toho třeba kombinace 6ti a tenhle vzorec řeší úplně všechno, jdu na tom provést zatěžkávací test![Smile :-)](./images/smilies/icon_smile.gif)
![Beer :beer:](./images/smilies/icon_beer.gif)
...může být i varianta:
X, 1A, JHG, 2, PP, K2, 00 a toho třeba kombinace 6ti a tenhle vzorec řeší úplně všechno, jdu na tom provést zatěžkávací test
![Smile :-)](./images/smilies/icon_smile.gif)
- PotPalo
- Příspěvky: 4565
- Registrován: 13 kvě 2009, 02:00
- Bydliště: BA-Petržalka :(
- Kontaktovat uživatele:
Akurát je to móóóc neefektívne. V BASICu ZX Spectra by taký program bol na pár riadkov. Zadali by sa hodnoty, koľko kombinácii chceme, a už by to išlo, a to bez obmedzenia počtu výpočtov. V Exceli to zaberie neskutočne veľa miesta opakujúcim sa vzorcom, a vypočítava sa iba pokiaľ je ten vzorec. ![Confused :?](./images/smilies/icon_confused.gif)
![Confused :?](./images/smilies/icon_confused.gif)
Zlu sa neustupuje, proti zlu sa bojuje.
V programu wxMaxima to jde napsat takto:
Pokud by se někomu chtělo přepsat do basicu, pak:
Funkci Kombinace(S,M) je předají dvě proměnné:
S - je to vstupní pole dat (například [1,2,3,4,5])
M - je počet hodnot (například 4)
Funkce Kombinace(S,M) volá rekurzivní funkci FN(P, S, K, M) (ta pak volá sama sebe).
Funkce Kombinace(S,M) vrací výsledek v poli Q (poslední položka ve funkci)
No a důležité je vědět, že proměnné S, P, Q jsou pole. je dimenzování prázdného pole.
je zjištění délky pole.
Příkaz připojí pole P na konec pole Q.
Jinak je to stejné jako basic.
Výsledek bude vypadat takto:
nebo třeba:
Kód: Vybrat vše
FN(P, S, K, M):= block([X, D: length(S), J:K],
if length(P)=M then ( Q: endcons(P, Q), return() ),
while J<=D do ( X: endcons(S[J], P), J: J+1, FN(X, S, J, M) )
)$
Kombinace(S,M):=block([Q:[],P:[]], FN(P, S, 1, M), Q)$
Funkci Kombinace(S,M) je předají dvě proměnné:
S - je to vstupní pole dat (například [1,2,3,4,5])
M - je počet hodnot (například 4)
Funkce Kombinace(S,M) volá rekurzivní funkci FN(P, S, K, M) (ta pak volá sama sebe).
Funkce Kombinace(S,M) vrací výsledek v poli Q (poslední položka ve funkci)
No a důležité je vědět, že proměnné S, P, Q jsou pole.
Kód: Vybrat vše
P:[]
Kód: Vybrat vše
D: length(S)
Příkaz
Kód: Vybrat vše
Q: endcons(P, Q)
Jinak je to stejné jako basic.
Výsledek bude vypadat takto:
Kód: Vybrat vše
Kombinace([1,2,3,4,5], 4);
matrix(
[1, 2, 3, 4],
[1, 2, 3, 5],
[1, 2, 4, 5],
[1, 3, 4, 5],
[2, 3, 4, 5]
)
Kód: Vybrat vše
Kombinace([A,B,C,D,E,F,G], 5);
matrix(
[A, B, C, D, E],
[A, B, C, D, F],
[A, B, C, D, G],
[A, B, C, E, F],
[A, B, C, E, G],
[A, B, C, F, G],
[A, B, D, E, F],
[A, B, D, E, G],
[A, B, D, F, G],
[A, B, E, F, G],
[A, C, D, E, F],
[A, C, D, E, G],
[A, C, D, F, G],
[A, C, E, F, G],
[A, D, E, F, G],
[B, C, D, E, F],
[B, C, D, E, G],
[B, C, D, F, G],
[B, C, E, F, G],
[B, D, E, F, G],
[C, D, E, F, G]
)