Skip to main content

Java Übung & Lösung: Bestimme die Anzahl der Tage


java übung lösung tage berechnen

In dieser Java Übung möchte ich, dass du eine Methode schreibst, welche zwei Zahlen entgegennimmt.
Und zwar soll die erste Zahl das Jahr sein.
Die zweite Zahl soll eine Monatsangabe (1-12) repräsentieren.

Was soll die Methode dann machen?
Die Methode soll dir die Anzahl der Tage des jeweiligen Monats zurückgeben.
Achte auf Schaltjahre.

Zum Beispiel:
Du übergibst der Methode beim Aufruf die Zahl 2016 für das Jahr.
Und du übergibst die Zahl 1 für den Monat Januar.

Die Methode liefert dann eine Bildschirmausgabe in welcher steht:
„Der Monat 1 im Jahr 2016 hat 31 Tage“.

Also dann los….

  • Erstelle eine Klasse „DatumEingabe“.
  • Implementiere die Methode „pruefeDatum“.
    Diese gibt eine Bildschirmanzeige mit der Anzahl der Tage zurück.
  • Rufe die Methode in der main-Methode der Klasse „DatumEingabe“ auf und übergib ihr zwei Parameter.

Im Grunde genommen gibt es zwei Lösungen zu dieser Java Übung

Die wohl eleganteste ist die Umsetzung mit dem switch case Statement.

Und so würde dies aussehen:


public class DatumEingabe {
	
	static void pruefeDatum(int monat, int jahr){
		int tage=0;
		switch (monat){
		case 1: 
		case 3: 
		case 5: 
		case 7: 
		case 8:
		case 10:
		case 12:tage=31;
		break;
		
		case 4:
		case 6:
		case 9:
		case 11: tage=30;
		break;

		case 2:
			if (jahr%4==0){
				tage=29;
			}
			else {
				tage=28;
			}
		break;	
		}
		System.out.println("Der "+monat+" Monat im jahr "+jahr+" hat "+tage+" tage");
	}
	
	public static void main(String[] args) {
		pruefeDatum(2,1904);
	}
}

Du möchtest, dass die Methode die Anzahl Tage ausgibt.

  • Es ist deshalb notwendig eine lokale Variable für die Anzahl der Tage anzulegen.
  • Dann kannst du die einzelnen Fälle über das switch case statement abfangen.
    Dazu switchst du das Argument Monat
  • Die Monate 1,3,5 usw. haben alle 31 Tage.
    Dann folgt die break-Anweisung da in diesem Moment die Methode aus dem switch-Block springen soll.
  • Das gleiche Prinzip kannst du für die Monate 4,6,9 und 11 umsetzen.
    Diese haben nämlich alle 30 Tage.

Dann haben wir noch den Monat 2. Also Februar.
Und dieser ist besonders. Denn alle 4 Jahre ist ein Schlatjahr.
Der Monat hat dann 28 Tage, anstatt 29.

Jetzt musst du das Jahr auswerten.
Wenn das Jahr durch vier teilbar (jahr%4==0) ist – Dann handelt es sich um ein Schaltjahr mit 29 Tagen.
Ansonsten ist es normales Jahr mit 28 Tagen.

Ich habe dir aber noch einen zweiten Lösungsweg versprochen.

Du kannst diese Java Übung auch mit einen Haufen if-Blöcken lösen.

Und so geht’s.


public class DatumEingabe {
	
	static void pruefeDatumIf(int monat, int jahr){
		int tage=0;
		if (monat== 1||monat==3||monat==5||monat==7||monat==8||monat==10||monat==12){
			tage=31;
		}
		else if (monat==4||monat==6||monat==9){
			tage=30;
		}
		else {
			if (jahr%4==0){
				tage=29;
			}
			else {
				tage=28;
			}
		}
		System.out.println("Der "+monat+" Monat im jahr "+jahr+" hat "+tage+" tage");
	}
	
	public static void main(String[] args) {
		pruefeDatumIf(2,2001);
	}
}

Die Methode benötigt ebenfalls eine lokale Variable um die Anzahl der Tage zu speichern.
Und dann wird die Bedingung im if-Block geprüft.
Hier werden die Monate mit 31 Tagen über ein „logisches Oder“ verknüpft.

Die Monate mit 30 Tagen werden über den else-if-Block abgefangen.
Auch hier sind alle möglichen Argumente über ein Oder verknüpft.

Und dann wird es etwas schwieriger.
Im else Block wird dann ein zusätzlicher if-Block implementiert.
Und dieser wertet das Jahr aus.

Falls das Jahr ein Schaltjahr ist (jahr%4==0), wird die Zahl 29 gespeichert.
Ansonsten ist ein kein Schaltjahr und es werden 28 Tage gespeichert.

Dies waren lediglich zwei Beispiele wie du dieses Problem lösen kannst.
Alternativ kannst du auch die Bildschirmausgaben in den if und else Blöcken direkt implementieren.

Bleibt zu sagen.
Auch bei dieser Java Übung gibt es jede Menge Möglichkeiten diese zu lösen.


Ähnliche Beiträge

Java Anfänger Übung: Hello World

Java-Übung-Hello-World

Alles beginnt mit „Hello World“. Sämtliche Java Bücher beginnen mit diesem ersten Beispiel. Auch die Java Übungen sollen mit diesem ersten Programm starten. Definiere eine Klasse „Hello World“. Implementiere die Main Methode. Die Main Methode soll bei Programmaufruf die Bildschirmanzeige „Hallo Welt“ zurückgeben. Die Lösung zur Java Übung „Hallo Welt“ […]

Java Übung & Lösung: Gerade oder ungerade Zahlen?

java programmierung übung lösung gerade ungerade zahlen

In dieser Java Übung geht es um Zahlen. Um genau zu sein…. Es geht um gerade und ungerade Zahlen. Zur Erinnerung. Gerade Zahlen sind Zahlen, welche durch zwei teilbar sind. Ungerade Zahlen sind alle Zahlen, welche nicht glatt durch zwei teilbar sind. Ich möchte, dass du eine Klasse „GeradeZahlen“ anlegst. […]

Java Übung & Lösung: Das erste kleine Java Spiel

java übung lösung javaspiel

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 […]

Java Übung & Lösung: Kommazahlen auf x-Nachkommastellen runden

java-programmierung-kommazahlen-runden

In dieser Java Übung möchte ich mit dir Zahlen runden. Ich bitte dich deshalb: Erstelle eine Klasse „RundenUebung“. Lege dann eine statische Methode rundeZahl() an. Diese erwartet zwei Parameter. Parameter 1 ist die Kommazahl, welche gerundet werden soll. Als zweiten Parameter wird eine ganze Zahl übergeben, welche die Nachkommastelle – […]

Java Übung & Lösung: Bestimme den größten gemeinsamen Teiler

java übung lösung größten gemeinsamen teiler bestimmen

In dieser Java Übung möchte ich, dass du den größten gemeinsamen Teiler zwei Zahlen ermittelst. Ich möchte, dass du das Ganze mit einer while-Schleife umsetzt. Und wie? Du legst eine neue Klasse „GGT“ (größter gemeinsamer Teiler) an. In diese Klasse implementierst du eine Klassenmethode „berechneGGT“. Diese erwartet zwei Argumente vom […]

Java Übung & Lösung: Würfelspiel mit Wertspeicherung im Array

java übung lösung spiel array werte speichern

In dieser Java Übung soll ein Würfelspiel simuliert werden. Lege eine Klasse namens, Würfelspiel an. Diese Klasse enthält eine statische Methode, namens würfeln(). Diese Methode erwartet einen Parameter vom Datentyp Integer, namens „anzahlWuerfe“. Diese Variable/Parameter repräsentiert die Anzahl der Würfe. Nachdem der Methode die Anzahl der Würfe übergeben wurde, soll […]

Java Übung & Lösung: Erstelle ein Mathematik- und Rechenprogramm

java übung lösung rechenprogramm

In dieser Java Übung möchte ich mit dir ein Programm erstellen, welches ein Mathematik-Test oder eine Mathe-Olympiade simuliert. Du kennst das vielleicht noch aus der Schule. Matheolympiade- Da wurden aus allen vier Grundrechenarten, Aufgaben formuliert. Die Schüler mussten diese Aufgaben lösen. Die Lehrer kontrollierten die Lösungen. Und der Schüler, welcher […]

Java Übung & Lösung: Fakultät berechnen und ausgeben

java übung lösung fakultät berechnen ausgeben

In dieser Java Übung geht es um die Fakultät aufeinander folgender Zahlen. Für alle, bei denen der Mathe-Unterricht genauso lange her ist, wie bei mir: Die Fakultät ist das Produkt aufeinander folgender natürlicher Zahlen. Zum Beispiel: Die Fakultät von 2 ist: 1*2=2 Die Fakultät von 5 ist: 1*2*3*4*5=120 So – […]