Java :: Aufgabe #2 :: Lösung #17

21 Lösungen Lösungen öffentlich
#2

Jahr auf Schaltjahr überprüfen

Anfänger - Java von Gustl - 06.08.2012 um 23:26 Uhr
Schreiben Sie eine Methode, welche überprüft ob das übergebene Jahr (int) ein schaltjahr ist oder nicht.
Rückgabewert ist ein boolean-Wert (true oder false)

Testen Sie die Methode!

Methodenrumpf:
Quellcode ausblenden Java-Code
public static boolean isSchaltjahr(int year) {

}
#17
vote_ok
von nOrdan (1160 Punkte) - 29.05.2019 um 18:35 Uhr
Anmerkung: Ich arbeite mit dem Programm BlueJ

Quellcode ausblenden Java-Code


import javax.swing.JOptionPane;

/**
 * Prüfen ob ein Jahr ein Schaltjahr ist.
 * 
 * @author (nOrdan) 
 * @version (29.05.2019 18:12)
 */

public class Schaltjahr
{
    /**
     * Konstruktor für Objekte der Klasse Schaltjahr
     */
    public Schaltjahr()
    {

    }

    public void schaltjahrPruefen()
    {
        boolean valid = false; //Hilfsvariable für die While-Schleife
        while (valid == false) //While-Schleife ,so dass der User nach falscher Eingabe erneut aufgefordert wird ein Jahr einzugeben
        {
            String input = JOptionPane.showInputDialog("Geben sie ihr Jahr ein, welches sie prüfen wollen"); //Eingabe des Users
            try //Hiermit sollen keine Zahleneingaben abgefangen werden siehe beim ersten else 
            {
                if (input == null) 
                {
                    System.exit(0); //Drückt der User auf abbrechen wird null zurück gegeben und das Programm wird beendet
                }
                else if (input.length() == 0)
                {
                    continue; //Gibt der User nichts ein und drückt auf Ok wird die While-Schleife weiter fortgeführt bis der User etwas eingibt und auf Ok drückt
                }
                else
                {
                    int jahr = Integer.parseInt(input); //Umwandlung des Inputs in einen int   
                    valid = true; //Beenden der While-Schleife indem man die Hilfsvariable auf true setzt
                    if (istSchaltjahr(jahr) == true) //Ergebnisrückgabe ob das eingegebene Jahr ein Schaltjahr ist oder nicht
                    {
                        JOptionPane.showMessageDialog(null,"Das Jahr " + jahr + " ist ein Schaltjahr");                
                    }
                    else
                    {
                        JOptionPane.showMessageDialog(null,"Das Jahr " + jahr + " ist kein Schaltjahr");
                    }
                }
            }
            catch (Exception e) //Greift wenn keine Zahl vom User eingegeben wurde, danach erneute Abfrage des Users wegen der While-Schleife
            {
                JOptionPane.showMessageDialog(null,"Invalid Input", "Error", JOptionPane.ERROR_MESSAGE); 
            }   
        }
    }

    private boolean istSchaltjahr(int jahr)
    {
        if ((jahr % 4 == 0) && ((jahr % 100 != 0) || (jahr % 400 == 0))) //Prüfen ob Schaltjahr nach den Schaltjahrregeln
        {
            return true;
        }
        else
        {
            return false;
        }
    }
}



Kommentare:

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

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

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.