Skip to main content

Java Übung 32: Passworteingabe und Passwortvergleich

In dieser Java Übung möchte ich, dass du ein Programm erstellst, welches ein eingegebenes Passwort kontrolliert.

  • Lege dazu eine Klasse „PassWortAbfrage“ an.
  • In dieser Klasse befindet sich die main-Methode für den Programmmstart.
    Beim Start des Programmes wirst du aufgefordert ein Passwort mittels Bildschirmeingabe einzugeben.
  • Dann wird eine weitere statische Methode „pruefePassWort()“ aufgerufen.
    Und diese Methode fordert dich dazu auf, ein Passwort einzugeben.
  • Nachdem du das Passwort eingeben hast, prüft die Methode „pruefePassWort()“, ob dieses mit dem ursprünglichen Passwort überein stimmt oder nicht.
  • Falls das Passwort überein stimmt, erhältst du die Bildschirmausgabe „Zugang gewährt“.
    Falls aber dein Passwort falsch ist, erhältst du die Ausgabe „Passwort falsch. Neuer Versuch“.
    Und du erhältst wieder die Möglichkeit ein Passwort auf der Konsole einzugeben.
  • Nach drei falschen Versuchen erscheint die Bildschirmausgabe „Passwort falsch. Zugang verweigert. Wenden Sie sich an den System-Administrator“.
    Nach dem dritten Versuch ist kein neuer Passwortversuch mehr möglich.

Also dann viel Spaß beim Lösen dieser Java Übung.


Hier ist die Lösung zu dieser Java Übung.

import java.util.Scanner;

public class PassWortAbfrage {
	
	static void pruefePassWort(String passWortVergabe){
		Scanner eingabe = new Scanner(System.in);//Scanner für Eingabe der zu-überprüfenden Passwörter
		System.out.println("Gib Passwort ein!!");//Aufforderung zur Passworteingabe
		String passwortPruefung = eingabe.next() ;//Speichern des eingebenen Passwortes
		int i =1;//Zählvariable für Versuche
		
		while(passWortVergabe.equals(passwortPruefung)==false && i<3){
				System.out.println("Passwort falsch. Neuer Versuch");
				passwortPruefung = eingabe.next();
				i++;
			}	
		if (passWortVergabe.equals(passwortPruefung)==true){
			System.out.println("Zugang gewährt");
		}
		else {
		System.out.println("Passwort falsch. Zugang verweigert. Wenden Sie sich an den System-Administrator");
		}
	}

	public static void main(String[] args) {
		Scanner passwortEingabe = new Scanner(System.in);//Scanner zur Nutzereingabe
		System.out.println("Vergebe ein Passwort");//Auffordderung zur Passwortvergabe
		String passWortVergabe = passwortEingabe.next();//Speichern des eingebenen Passwortes
		pruefePassWort(passWortVergabe);//Methodenaufruf und Übergabe des Passwortes
	}
}

Für die Lösung dieser Aufgabe habe ich die while-Schleife gewählt, da die Anzahl der Schleifendurchläufe ungewiss sein wird.
Du weißt zwar, dass es höchstens drei Durchläufe geben wird.
Dennoch ist nicht 100%-ig klar, wie viele Durchläufe es genau sein werden.

Die Schleifenbedingung besagt:
Solange das eingegebene Passwort nicht mit dem gespeicherten Passwort übereinstimmt und die Zählvariable unter drei ist – geh in den Schleifenrumpf.

Im Schleifenrumpf wird dann ganz normal die Zählvariable i um eins erhöht und es wird zur Neueingabe aufgefordert.

Außerhalb der Schleife wird dann nochmal geprüft, ob das Passwort übereinstimmt.
Und in Abhängigkeit der Richtigkeit des Passwortes, werden zwei unterschiedliche Bildschirmausgaben produziert.


Ähnliche Beiträge

Java Übung 26 – Das erste kleine Java Spiel

Java Übung Zahlenraten

In dieser Java Übung geht es darum ein kleines Java-Spiel zu erstellen. Und zwar Zahlen raten. Was kannst du dir darunter vorstellen? Du gibst einen bestimmten Wertebereich an. Zum Beispiel 0 bis 100. Und das Java Programm erstellt eine Zufallszahl in diesem Bereich. Dann fordert dich das Programm auf, die Zahl zu raten. Du gibst […]

So implementierst du Instanzmethoden in deine Java Klasse

Java Instanzmethoden

In einen der letzten Beiträge habe ich dir gezeigt, wie du eine Klasse anlegen kannst. Ich habe die Klasse „Mensch“ oder „Human“ angelegt und wir haben die erste Instanzvariable implementiert. Dein Code sollte jetzt so aussehen: public class Human { int size=156;//size in centimeter } In diesem Beitrag werde ich dir zeigen, wie du Java […]

Der wichtige Unterschied zwischen Java Methoden

Java Methoden Unterschied

Jetzt machen wir Nägel mit Köpfen. Dieses Sprichwort stammt aus den Anfängen des Industriezeitalters. Denn früher wurden Nägel nicht industriell, sondern per Hand gefertigt. Und da kam es schon einmal vor, dass versehentlich Nägel ohne Kopf produziert wurden. Was blieb ist das Sprichwort „Nägel mit Köpfen“ Und dieses steht sinngemäß für eine schnelle, qualitativ hochwertige […]

Lassen wir Java rechnen – Die Rechenoperationen für Variablen

Java rechnen

Ich liebe Mathe. In der Biographie „Der Mann, der die Zahlen liebte“, stellt Paul Hoffmann das Mathematikgenie Paul Erdös vor. Erdös war eines der größten Genies des 20 Jahrhunderts. Er arbeitete mit zahlreichen Wissenschaftlern zusammen und verfasste durchschnittlich mehr Publikationen im Jahr, als andere Mathematiker im ganzen Leben. Da Erdös sich mit sehr vielen Theoremen […]

So kannst du Java Konstanten bei der Programmierung nutzen

Java Konstanten – was kann man sich darunter vorstellen? Du kennst Konstanten in der Mathematik. Die Kreiszahl Pi ist so eine konstante Zahl. Diese Zahl ändert sich niemals. Sie beträgt immer rund 3,141592. In der Physik gelten die Lichtgeschwindigkeit, der Erdradius oder der absolute Nullpunkt als konstant. Selbst die Geschwindigkeit mit der sich die Erde […]

10 ganz nützlichen Feature der Klasse Java Math

In diesem Beitrag geht es um eine spezielle Java Klasse. Die Klasse nennt sich Java Math. Diese ist in der Standardbibliothek von Java enthalten. Warum solltest du diese Klasse kennen? Die Math Klasse bietet dir einen Menge Methoden an, welche zur Berechnung von mathematischen Gleichungen ganz hilfreich sind. Aber auch für Nichtmathematiker ist etwas dabei. […]

Verwalte deine Java Klassen in packages

java klassen verwalten

Es macht durchaus Sinn deine Java Klassen in verschiedenen Paketen zu organisieren. Wieso? Es sprechen mehrere Gründe dafür: Du kannst doppelte Klassennamen verwenden Du kannst deinen Code oder deine Klassen inhaltlich trennen Du kannst Hierarchien abbilden. Und genau um diese Dinge geht es in diesem Beitrag

So verwendest du die Java Codeblöcke zur Automatisierung

Java Codeblöcke

In diesem Beitrag geht es um den Einsatz von Java Codeblöcken oder Initialisierungsblöcken. Viele Wege führen nach Rom. Oder Alle Wege führen nach Rom. Heißt es in einem alten Sprichwort. Und so ähnlich ist es bei der Java Programmierung. In diesem Beitrag möchte ich dir einen weiteren Weg vorstellen, wie du Variablen eines Java Objektes […]

Die vier verschiedenen Zahlensysteme in der Java Programmierung

Java Zahlensysteme

Java Zahlensysteme – Was soll das? In sämtlichen Programmiersprachen werden Zahlen in Variablen abgespeichert. Wenn du dir die einzelnen primitiven Datentypen in Java einmal anschaust – wirst du feststellen – dass die Masse der Datentypen Zahlen annehmen und speichern können. Zahlen und die Mathematik dahinter spielen in der Programmierung eine sehr große Rolle. Ganz am […]

Das Instanzieren von Java Klassen verhindern

Java Objekte Instanzieren verhindern

Die Instanzierung von Java Klassen verhindern. Was heißt das? Instanzen sind die Objekte einer Java Klasse. Und Instanzieren oder Instanzierung heißt nichts anderes, als Objekterstellung. Aber was soll das? Oder mal anders gefragt: Wieso sollte man verhindern, dass eine Java Klasse – Objekte erstellen kann? Schließlich sind doch Objekte der Sinn und Zweck jeder objektorientierten […]

Java Vererbung:
Die 3 Schablonen für deine Java Objekte

Java Vererbung Beispiel

Im letzten Beitrag habe ich dir das Java Vererbung Konzept an einem Beispiel vorgestellt. In dem Beispiel-Rollenspiel gab es Klassen zu Helden und Superhelden. Ich habe dir die Vererbungshierarchien theoretisch erläutert. Jetzt geht es ans Praktische. In diesen Beitrag lernst du: Wie du bestehende Java Klassen erweiterst Wie du Objekte aus den erweiterten Klassen erstellen […]