Skip to main content

Java Übung – Gerade oder Ungerade?

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.
Diese enthält natürlich die main Methode.

Aber diese Klasse soll weiterhin eine statische Methode enthalten, welche eine ganze Zahl als Parameter erwartet.
Diese ganze Zahl soll dann im Methodenrumpf untersucht werden.

Falls die Zahl eine gerade Zahl ist, erfolgt die Konsolenausgabe „Zahl ist gerade“.
Falls die übergebene Zahl aber ungerade sein sollte, erfolgt die Ausgabe „Zahl ist ungerade“.

Löse diese Java Übung durch eine bedingte Anweisung im Methodenrumpf.


Die Lösung der Java Übung Schritt für Schritt.

Erst einmal die Klasse und die Methoden.

public class GeradeZahlen {

	static void unterscheideZahlen(int zahlWert) {
		
	}
	
	public static void main(String[] args) {
		
	}
}

Die Methode, welche die Zahlen unterscheiden soll, heißt „unterscheideZahlen“.
Die Methode ist eine Klassenmethode.
Daher enthält der Methodenkopf das Keywort static.
Dies hat den Vorteil, dass du zur Ausführung der Methode keine Instanz erzeugen musst.

Die Methode soll weiterhin nur Konsolenausgaben erzeugen.
Deshalb hat sie void als Rückgabetyp.

So und jetzt bette die bedingte Anweisung in den Methodenrumpf ein.
Als Erstes benötigst du einen Vergleichsausdruck.
Falls der Ausdruck wahr ist – Dann ist die Zahl gerade.
Ansonsten ist die Zahl ungerade.

Der Modulo Operator ermittelt den Restwert einer Division.
Beispielsweise würde 4 Modulo 2 den Restwert 0 ergeben.
5 Modulo 2 würde den Restwert 1 ergeben.
Denn 5 geteilt durch 2 ist gleich 2 Rest 1.

Somit kannst du sagen, dass alle geraden Zahlen, bei einer Division durch 2, einen Restwert von 0 hätten.

Und du lässt, innerhalb der Methode, den Wert des Argumentes / Parameters prüfen.
Und dieser heißt in diesem Beispiel „zahlWert“.

Somit nutzt du die Bedingung:
zahlWert % 2 == 0

Jetzt bindest du das Ganze in einen if Block ein.

public class GeradeZahlen {

	static void unterscheideZahlen(int zahlWert) {
		if (zahlWert % 2 == 0) {
			System.out.println("Zahl ist gerade");
		}	
	}
	
	public static void main(String[] args) {
		unterscheideZahlen(2);
	}
}

Ich habe innerhalb der main-Methode die „unterscheideZahl-Methode“ mit dem Argument 2 aufgerufen.

Was passiert?
Klicke auf „Run“ und sieh selbst nach. 🙂

Es erfolgt die Konsolenausgabe: „Zahl ist gerade“.
Du übergibst der Methode beim Aufruf eine ganze Zahl.
Die Methode prüft die Bedingung.
Wenn der Restwert bei einer Division durch 2 Null ist.
Dann springt die Methode in den if-Block und führt diesen aus.

Versuche doch einmal sämtliche gerade Zahlen einzugeben.
Und?
Klappt soweit.

Doch was passiert bei ungeraden Zahlen?
Probier es aus.
Gib eine drei ein, klicke auf „Run“ und schau was passiert.

Nichts.
Klar, du hast bis jetzt noch keine Anweisung dafür geschrieben.

Du musst also unter dem if-Block einen else Block setzen.
Und so sieht dieser aus.

public class GeradeZahlen {

	static void unterscheideZahlen(int zahlWert) {
		if (zahlWert % 2 == 0) {
			System.out.println("Zahl ist gerade");
		}
		else {
			System.out.println("Zahl ist ungerade");
		}
			
	}
	
	public static void main(String[] args) {
		unterscheideZahlen(3);
	}
}

Du kannst jetzt jede beliebige ganze Zahl der Methode mitgeben.
Die Methode prüft, ob diese durch zwei teilbar ist und gibt dir die entsprechende Meldung.


Ähnliche Beiträge

So organisierst und verwaltest du ganz bequem deine Java Projekte

Du kennst das auch. Denn du bist ja fleißig. Und weil du so fleißig bist, hast du mitunter auch mehrere Java Projekte gleichzeitig laufen. Und dann kommt es vor, dass du enorm viele Java Projekte am Laufen hast. Und dein Package-Explorer wird extrem unübersichtlich. In diesem Beitrag möchte ich dir zwei Varianten vorstellen, wie du […]

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

Java Objekte leben auf dem Heap

Java-Objekte-Heap

Java hat eine interne Speicherverwaltung. Eigentlich ist es nicht nur eine. Es sind mehrere.   Uns interessieren nur zwei. Methoden und lokale Variablen werden auf dem Stack verwaltet. Und die Speicherverwaltung für Java Objekte und den Instanzvariablen findet auf dem Heap statt.   Ja wieso braucht Java eigentlich zwei Speichersysteme?   Es ist ganz einfach. […]

Nutze das Keyword this für deine Java Konstruktoren

Java konstruktoren this

Es ist gemein. Wahrscheinlich hast den Beitrag zu den lokalen Variablen gelesen. Vielleicht hast du auch den Artikeln zum Anlegen und Überladen von Java Konstruktoren gelesen. Und wenn du die beschriebene Inhalte selbst ausprobiert hast…… Dann hast du dir wahrscheinlich sehr viele lokale Variablennamen für die Parameterliste ausdenken müssen.

So legst du Utility Klassen in Java an

Java Utility Klassen

Utility Java Klassen – was ist das? Man nennt diese auch Hilfsklassen von Java. Diese Utility Klassen sind Java Klassen, welche lediglich Methoden und Konstanten anbieten. Am Beispiel: Die Klasse Math ist so eine klassische Utility Klasse. Wozu braucht man solche Klassen? Diese Klassen sind so etwas wie ein Werkzeugkoffer für jedes Java Programm. Hier […]

Java Übung 27 – Auf zur Mathe-Olympiade

Java Übung Mathe Olympiade

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 die wenigsten Fehler hatte – […]

Die drei Bestandteile aller Java Klassen

Java Klassen Bestandteile

Java ist eine objektorientierte Programmiersprache. Was heißt das? Ja… Anscheinend hat es etwas mit Objekten zu tun. Also was ist ein Objekt? Ein Objekt ist ein bestimmtes Konstrukt im Programm. Bauen wir ein Spiel. Ein Grafik-Adventure. Du kennst das. Ein Held wird in eine bestimmte Spielwelt hinein gesteckt. Der Held muss mit bestimmten Personen sprechen. […]

Java Vererbung – Die Hierarchien richtig planen

Java Vererbung Hierarchien

Java Vererbung hat nichts mit Biologie zu tun. Die Genetik besagt, dass bestimmte Merkmalsausprägungen von den Eltern auf die Kinder übergehen. Solche Merkmalsausprägungen sind: die Hautfarbe die Haarfarbe die spezifische Größe und weitere körperliche Merkmale. Und in Java – was ist da Vererbung? Lass es uns herausfinden. Was erwartet dich in diesem Beitrag? Zuerst schauen […]

Von Java Klassen zum Java Programm – Der Programmstart

Java Klassen ausführen

In den letzten Beiträgen hast du gelernt, wie Java Klassen erstellt werden und aufgebaut sind. In diesem Beitrag geht es um den Programmstart. Ich will dir zeigen, was nötig ist, dass du ein Java Programm ausführen kannst. Und ich zeige dir außerdem, wie du eine Startklasse in einem x-beliebigen Javaprogramm anlegst. Wie auch schon zuvor, […]