Java :: Aufgabe #72 :: Lösung #5

5 Lösungen Lösungen öffentlich
#72

Passwortgenerator mit Parametern

Anfänger - Java von pocki - 27.11.2014 um 18:11 Uhr
Erstelle ein Programm/Funktion welche/s ein zufälliges Passwort erzeugt.
Als Parameter soll die Länge sowie die Art der darin vorkommenden Zeichen übergeben werden können.
Zur Auswahl sollen stehen: Kleinbuchstaben, Großbuchstaben, Zahlen und Sonderzeichen.
Jede beliebige Kombination der Parameter soll möglich sein.
#5
vote_ok
von paddlboot (3970 Punkte) - 10.07.2019 um 15:02 Uhr
Quellcode ausblenden Java-Code
import java.util.*;

public class Passwortgenerator {
	public static void main (String[] args) {
		Scanner scanner = new Scanner(System.in);
		String auswahl = "";
		String passwort = "";
		int counter = 0;
		
		System.out.println("--- Passwortgenerator ---");
		System.out.print("Länge?\t");
		int länge = scanner.nextInt();
		System.out.println("Vorkommende Zeichen:");
		System.out.println("Kleinbuchstaben\ttrue/false?");
		Boolean Klein = scanner.nextBoolean();
		System.out.println("Großbuchstaben\ttrue/false?");
		Boolean Groß = scanner.nextBoolean();
		System.out.println("Zahlen\ttrue/false?");
		Boolean Zahlen = scanner.nextBoolean();
		System.out.println("Sonderzeichen\ttrue/false?");
		Boolean Soz = scanner.nextBoolean();

		if(Klein == true) {
			auswahl += "abcdefghijklmnopqrstuvw";
			counter += 26;
		}
		if(Groß == true) {
			auswahl += "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
			counter += 26;
		}
		if(Zahlen == true) {
			auswahl += "0123456789";
			counter += 10;
		}
		if(Soz == true) {
			auswahl += "!?=()/%&$§{}[]<>|,.;:-_+-*#";
			counter += 27;
		}
		
		Random zufall = new Random();
		
		for(int i = 0; i < länge; i++) {
			int z = zufall.nextInt(counter);
			passwort += auswahl.charAt(z);
		}
		
		System.out.println("Passwort:\t" + passwort);
		
		scanner.close();
	}
}

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben