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

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) {

}
#7
1x
vote_ok
von Jurom (1070 Punkte) - 19.10.2012 um 11:42 Uhr
Quellcode ausblenden Java-Code
//©2012 by Julius J. Hoffmann
//written with Eclipse

import java.util.*;  //Importiert Scanner zum Einlesen der Eingabe

public class Schaltjahr {		//Die "ausführende Klasse"
	
	public static boolean isSchaltjahr(int year)				//Die Methode zur Überprüfung, vom typ boolean
	{
		if (year%4 == 0 && (year%100 != 0 || year%400 == 0))	//Kontrollabfrage mit booleschen Operatoren (s.u.)
				return true;									//Rückgabe WAHR, wenn die Regeln zutreffen, -> Methode endet HIER
		return false;											//Rückgabe FALSCH, else entfällt, da die Methode bei return autom. endet
	}		//Ende isSchaltjahr-Methode
	
//-------OPTIONAL:-----------------------------------------------------	

	public static void main(String[] args)								//main-Methode
	{
		System.out.print("Bitte Jahr eingeben");						//Ausgabe des Strings
		Scanner s = new Scanner(System.in);								//legt das Scanner-Objekt an
		int y = s.nextInt();											//liest die manuelle Eingabe ein und speichert sie in der Variablen y
		if (isSchaltjahr(y)) System.out.print(y+" ist ein Schaltjahr");	//Abfrage, kein Vgl. nötig, da dieser auch nur dazu dient  
																		//if einen true/false Wert zu übergeben, Ausgabe, wenn Schaltjahr
		else System.out.print(y+" ist kein Schaltjahr");				//Ausgabe, wenn kein Schaltjahr
		//Hier ist else nötig, da die Methode nach der Ausgabe weiterläuft und sonst beides anzeigen würde
	}	//Ende main-Methode
}	//Ende Klasse

/**
Die verwendeten booleschen Operatoren:
- && -> Und, verbindet mehrere Bedingungen
- || -> Oder, es reicht wenn EINE der beiden Bedingungen zutrifft (im Gegensatz zu XOR!)

Weitere Operatoren:
a&b -> gibt den Rest zurück, so lässt sich mit einer 0-Abfrage kontrollieren ob a ein Teiler von b ist
*/

Kommentare:

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

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