Buchstaben hochzählen ?
-
Hoi,
gibts da ne möglichkeit buchstaben so wie z.b. Zahlen(++)
hochzählen zu lassen ? A, dann AA, dann AAA danach B, BB usw.
Oder muß ich die buchstaben selbst per extra funktion nacheinander
zusammenbacken und sagen nach 3 x a is b an der reihe ?
-
hätt ich auch schon mal gesucht aber standard mäßig ist nichts dabei
-
Vielleicht:
CString stradd(CString str, int anz) { CString txt=str; for (int i=0; i<anz; i++) { txt+=str; } return txt; };
-
Da will wohl jemand ein Brute-Force-Programm schreiben und scheitert an der Generierung eines Passwortes. @hronny: Da klappt so nicht.
-
Naja sollte wohl gehen,wenn man jedem Buchstaben eine
Zahl zuordnet und dann die Zahl hochzählt.
A=1
hochzählen bis 10 = 10x A
ab 11 hochzählen für B bis 20 usw.Dann wenn alle Buchstaben durch sind mit dem Mixen
der Zahlwerte anfangen und wieder die Buchstaben zuordnen.
Wert1 = 1,
Wert2=19, wäre dann z.b. "ab"Ist aber ziemlich nervig und stümberhaft so ~~
-
Hi!
Für deine Anfangsfrage habe ich mal einen kleinen Algo programmiert:
int zeichen; CString list, temp; char test; int count; for(zeichen=65;zeichen<91;zeichen++) { test = (int)zeichen; temp = test; for(count=0;count<3;count++) { list += temp; } m_list.AddString(list); list = ""; }dabei werden jeweils 3 Buchstaben hintereinander in ein ListCtrl geschrieben. Die Variable ist "m_list" und die Variable, welche die 3 Buchstaben enthält "list". Hoffe ich konnte dich etwas weiterbringen.

-
Danke, so hatte ich das schon fast ins Auge gefasst

-
Damit er was zu knabbern hat, hier ein alternativer Passwortgenerator.
Sie erzeugt bei jedem Aufruf eine neue Zeichenkette in der die Buchataben von links beginnend hochgezählt werden.
Die für die Generierung zugelassenen Zeichen können definiert werden, die Zählreihenfolge ebenfallschar Allowed[]={"0123456789ABDCD..Za..z_-#"}; //hier die Zeichen festlegen die zugelassen sind zur Erzeugeung des Keys int AnzAllowed=sizeof(Allowed)/sizeof(char)-1; // Berechnung der Anzahl der zugelassenen Elemente int GenNextKey(char *text,const int LenText) // Text Keystring Lentext Anzahl Buichstaben in KeyString { #define AnzChar 256 // Die Routine ist begrenzt auf 256 lange Codestrings static index[AnzChar]; // aktueller Zustandsspeicher static int FirstTime=0; int i; if (0==FirstTime) // Initialisierung des Zustandsspeichers { for(i=0;i<AnzChar;i++) index[i]=0; FirstTime=1; } for (i=0;i<LenText;i++) // Berechnung des nächsten Elements { text[i]=Allowed[index[i]]; index[i]++; if (index[i]>AnzAllowed) { index[i]=0; text[i]=Allowed[index[i]]; index[i]++; } else break; } return 0; } ////////////////////////////////////////////////// int main() { int i; char text[AnzChar]; for (i=0;i<20;i++) text[i]=0; for (i=0;i<1000000;i++) { GenNextKey(text,AnzChar); printf("%s\n",text); } return 0; }P.S. Sieht einer Möglichkeiten es zu optimieren, sowohl größe als auch Schnelligkeit??