Zum Inhalt springen

Passwortgenerator


Empfohlene Beiträge

Geschrieben

Hi leute,

Ich komm nicht weiter:

Problem ich soll einen Passwortgenerator progarmmieren, folgende Bedingungen werden anfangs abgefragt:

Bitte geben Sie die gewuenschte Anzahl von Passwoertern an: ..

Bitte geben Sie die minimale Laenge eines Passwortes an: ..

Bitte geben Sie die maximale Laenge eines Passwortes an: ..

Soweit so gut die Abfrage bekomme ich hin, die Schleife für die Anzahl der Passwörter auch!

for( int i = 0; i < anzahl; i++ ) {....... }

Wie aber kann ich jetzt Felder erstellen die unterschiedliche lang sind?

Damit ich später dann werte rein schreiben kann.

Kann mir jemand da etwas auf die Sprünge helfen?

Gruß

:uli

Geschrieben
Wie aber kann ich jetzt Felder erstellen die unterschiedliche lang sind?


int numberOfEntries = 42;

String[] passwordArray = new String[numberOfEntries];

for(int i=0; i < numberOfEntries; i++) {

  passwordArray[i] = this.createPassword();

}

Geschrieben

Danke für die schnelle Antwort aber

oben frag ich ja z.B.

anzahl = readInt("Bitte geben Sie die gewuenschte Anzahl von Passwoertern an: ");

mini = readInt("Bitte geben Sie die minimale Laenge eines Passwortes an: ");

maxi = readInt("Bitte geben Sie die maximale Laenge eines Passwortes an: ");

wenn ich da jetzt 6,3,8 eingebe muss ích ja 6 Passwörter erzeugen mit mindestens 3 und höchstens 8 Zeichen.

Dein Code überprüft die Schranken nicht oder seh ich das falsch?

Ich weiß nicht wie ich diese zwei Schranken einbauen soll.

Geschrieben
Dein Code überprüft die Schranken nicht oder seh ich das falsch?
Nein, tut er nicht. Das ist ein Beispiel, wie die dynamische Generierung eines Arrays prinzipiell funktioniert und keine Komplettlösung für deine Frage.

Ich weiß nicht wie ich diese zwei Schranken einbauen soll.
Dann hast du scheinbar noch sehr wenig Ahnung von den Java Grundlagen, die sich auch nicht mal eben in zwei Postings und fünf Minuten lesen klären lassen. Deshalb: Nimm dir ein gutes Tutorial und fange an die Sprache zu lernen. Durch herumprobieren wirst du nie wirklich weit kommen. Dein Stichworte für die aktuelle Aufgabe lauten übrigens IF-Abfrage und Schleife.
Geschrieben

Wie wärs wenn du ein Char[] machst, welches eine Länge besitzt, die innerhalb dieser Schranken ist.

Die Länge kannst du dann ja mit deinem frisch gelernten Zufallszahl-Generator ermitteln ;)

Geschrieben
Wie wärs wenn du ein Char[] machst, welches eine Länge besitzt, die innerhalb dieser Schranken ist.

Die Länge kannst du dann ja mit deinem frisch gelernten Zufallszahl-Generator ermitteln

Wuah *angs* :)

Array mit einer Anzahl x deklarieren:


int laenge = ....

irgendwas[] y = new irgendwas[laenge]

schranken einbauen

int anzahl = readInt(..);

int min = readInt(..);

int max = readInt(..);


String[] pwds = new String[anzahl]

for(int i=0; i<pwds.length; i++){


}

Für die generierung wäre z.B: sowas möglich: - Min. und Max-Länge ermitteln - ne Zahl generieren welche zwischen min-Laenge und max-Laenge ist...

int min = 1;

int max = 9;


int minRange = Math.pow(10, min-1);

int maxRange = Math.pow(10, max-1);


int zufallszahl = random(minRange, maxRange);

Damit hast du dann eine Zahl die Mindestens 'min' Stellen und Maximal 'max' Stellen lang ist. Entweder dir reicht das Passwort als Zahl oder du baust noch nen Algorithmus zum umwandeln ein. Wie du das machst kannst du dir überlegen, gibt viele Möglichkeiten.

Z.B. eine Art mapping, also sowas

Zahl => Buchstabe

0 => a

1 => b

...

Das ist aber recht unsinnig, da max. 10 Kombinationen zu Stande kommen :)

Andere Möglichkeit wäre eine schleife von 0 - zahlenPassword.length. Bei jedem Durchlauf erzeugst du ne Zufallszahl zwischen (char)'a' und (char)'z', A und Z und 0-9.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...