5 mal gelesen und trotzdem nicht verstanden. Was hat es mit den Angaben auf sich:
Code: Alles auswählen
frombase
Die Basis zu der number kodiert ist
tobase
Die Basis zu der number konvertiert werden soll
Ich hab ein paar Zeichenketten durchgetestet, kann mir da aber nicht wirklich einen Reim drauf machen.
Ich suche was, was mir bei 1 die 1, bei z die 36, bei 00 die 37, bei 01 die 38 und bei 0z eben die 72 ausgibt.
Und dann brauche ich was, was so zählen kann: 1, 2, 3, 4, ... a, b, c, .... z, 00, 01, 02, ... 0z, 10, 11, usw.
Nur am besten noch mit Großbuchstaben, damit ich noch mehr Möglichkeiten habe.
EDIT:
Ich hab leider so meine Probleme mit rekursiven Funktionen, daher hab ich es mal so "gebastelt":
Code: Alles auswählen
function rec($str, $all)
{
$i = 0;
foreach ( $all as $ones )
{
echo($ones . ' ');
$i++;
}
foreach ( $all as $tens )
{
foreach ( $all as $ones )
{
echo($tens . $ones . ' ');
$i++;
}
}
foreach ( $all as $hundreds )
{
foreach ( $all as $tens )
{
foreach ( $all as $ones )
{
echo($hundreds . $tens . $ones . ' ');
$i++;
}
}
}
echo($i);
}
$str = '';
$all = array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');
rec($str, $all);
exit;
Das läuft genau wie ich es brauche. Hört jetzt bei ZZZ auf, was laut Zählung mit 242.234 gleichzusetzen ist. Jetzt brauche ich was, was mir die 242.234 in ZZZ umwandeln kann bzw. etwas was ohne kompletten Durchlauf das gleiche andersherum macht. Dann baue ich das mit 4 Stellen, denn ich denke, dann sind das genug Varianten. Ich denke es werden so 2 Millionen Varianten gebraucht.
EDIT2:
Also ich habe das noch mit Tausender durchprobiert, dann habe ich 15.018.570 Varianten (ZZZZ). Und das finde ich super, da es nur 4 Stellen sind.
EDIT3:
Eine mathematische Grundlade dafür hätte ich auch:
Für jede Stelle muss man 62 hoch Anzahl der Stelle addieren. Also bei 4 Stellen sieht die Formel so aus:
62 hoch 4 + 62 hoch 3 + 62 hoch 2 + 62 hoch 1 = 15.018.570 Varianten
Fragt man sich jetzt nur, wie mir das beim Rückwärtsbestimmen helfen könnte
EDIT4:
Ich weiß laut meinem Script, dass 2.000.000 z.B. 7nh4 ist. Die Frage ist, wenn ich nur 7nh4 habe, wie ich schnellstmöglich auf 2.000.000 komme und wenn ich nur 2.000.000 habe, wie ich schnellstmöglich auf 7nh4 komme.