Java Exercises - Grundlagen
Ziele
- Ich kann Text und Zahlen auf der Konsole ausgeben.
- Ich kann Text und Zahlen auf der Konsole eingeben und diese wieder ausgeben.
- Ich kann statische Methoden schreiben, die einfache Rechnungen durchführen.
- Ich kann statische Methoden mit Parametern und Return-Statements schreiben.
- Ich verstehe und kenne die verschiedenen Conditional Statements.
- Ich weiss, wann und wie ich welches Conditional Statement einsetzen sollte.
- Ich verstehe, was Loops sind und kenne die verschiedenen Loops.
- Ich weiss, wann und wie ich welchen Loop brauchen soll.
- Ich kann mithilfe von String-Methoden Strings bearbeiten.
- Ich kann Arrays initialisieren, auf deren Werte zugreifen und Werte in einem Array verändern.
- Ich kann mein Programm zur Laufzeit mit einem Debugger untersuchen.
Aufgabe 1 - Ausgaben auf die Kommandozeile
Gib die folgenden Daten in der Kommandozeile aus:
Hello World
Hello + <Dein Name>
Zeichne folgende Objekte mit Charakteren in der Kommandozeile:
Zeichne ein Haus, nutze dazu beliebige Zeichen
Zeichne eine Schweizerfahne
Falls unklar ist, was hier gemeint ist, schau dir ASCII-Art an. Hier ist eine Katze als Beispiel:
|
|
Hier kannst du zurück zur Theorie.
Aufgabe 2 - Conditional Statements
Aufgabe 2a - Die if
- und else
-Bedingungen
Löse die folgenden Aufgaben:
- Schreibe ein Programm, das feststellen kann, ob eine Zahl grösser, kleiner oder gleich 0 ist.
- Schreibe ein Programm, das dich begrüsst wenn dein Name in einer Variable gespeichert wird.
- Schreibe ein Programm, das feststellt, ob ein Jahr in einer Variable ein Schaltjahr ist. Recherchiere, was die Bedingungen sind.
- Schreibe ein Programm, das überprüft, ob eine Zahl in einer Variable gerade oder ungerade ist.
Hier kannst du zurück zur Theorie.
Aufgabe 2b - Das switch
-Statement
Löse die folgenden Aufgaben:
- Schreibe ein Programm, das eine Zahl zwischen 1 und 12 in einer Variable hat und dann den entsprechenden Monat ausgibt (für den Wert
2
wird dann der String"Februar"
zurückgegeben). - Schreibe ein Programm, das einen Wochentag in einer Variable hat und dann ausgibt, der wievielte Tag in der Woche er ist:
Der <Wochentag> ist der <X>. Tag in der Woche
. Schreibe die Methode so, dass maximal 1println()
(oder ähnliches) verwendet wird. Hinweis: Hier kann dir einswitch
-Assignment sehr viel Code ersparen. - Debugge mindestens zwei dieser Methoden mit einem Breakpoint.
Hier kannst du zurück zur Theorie.
Aufgabe 3 - Loops
Löse die folgenden Aufgaben:
- Schreibe ein Programm, welches eine beliebige Ganzzahl in einer Variable hat und die Fakultät dieser Zahl berechnet.
- Schreibe einen Loop, welcher alle Zahlen von 1 bis 100 zusammenzählt, welche durch 8 teilbar sind.
- Erweitere deine Lösung mit einer Methode, welche eine Zahl als Parameter entgegennimmt und dann die Zahlen zusammenzählt, welche durch diese Zahl teilbar sind.
Hier kannst du zurück zur Theorie.
Aufgabe 4 - Einfache Berechnungen
Berechne die folgenden Dinge:
- Fläche eines Rechtecks.
- Fläche eines Kreises.
- Umfang eines Rechtecks.
- Inhalt einer Pyramide mit quadratischem Grundriss und einer bestimmten Höhe.
- Berechne dein Alter in Monaten. Du kannst dafür von dem aktuellen Monat ausgehen.
- Schreibe eine Methode, welche eine beliebige Ganzzahl als Parameter übernimmt und die Vielfache von 3 zusammen mit der Vielfache von 5 dieser Zahl summiert.
Hier kannst du zurück zur Theorie.
Aufgabe 5 - Methoden
Löse die folgenden Aufgaben:
- Schreibe eine Methode, die zwei beliebigen Ganzzahlen als Parameter übernimmt und die Summe der beiden zurückliefert.
- Schreibe eine eigene Methode, die als Parameter einen Namen übernimmt. Die Methode soll dann die folgenden Daten auf die Kommandozeile ausgeben
Hello + <Parameter-Name>
Hier kannst du zurück zur Theorie.
Aufgabe 6 - Strings
Du hast den folgenden String:
|
|
Löse mit Hilfe dieses Strings folgende Aufgaben:
- Gib in der Konsole die Anzahl Wörtern aus.
- Gib den Text in Grossbuchstaben aus.
- Gib den Text so aus, dass jedes Leerzeichen mit einem Punkt ersetzt wurde.
- Schneide das Wort “Shurikens” aus. Ermittle hierfür die Position des Wortes anhand des
"
-Zeichens. Hinweis: DieindexOf()
-Methode bietet ein optionales ArgumentfromIndex
an. Übergibst du diePosition des ersten Anführungszeichen + 1
, dann wird die Position des zweiten zurückgegeben.
Schreibe für jede Aufgabe eine eigene Methode, welche den String als Parameter nimmt.
Hier kannst du zurück zur Theorie.
Aufgabe 7 - Strings und Loops
Löse die folgenden Aufgaben:
- Schreibe ein Programm, welches als Parameter einen beliebigen String übernimmt und dessen Zeichenfolge umkehrt.
- Schreibe ein Programm, welches als Parameter einen beliebigen String übernimmt und jeden zweiten Buchstaben gross schreibt (Beispiel:
"Hello World"
->"hElLo WoRlD"
).
Hier kannst du zurück zur Theorie.
Aufgabe 8 - Eingaben von der Kommandozeile
Lies zuerst deinen Namen und dann dein Alter über einen Scanner von der Konsole ein und gib dann die folgenden Daten auf die Kommandozeile aus
Hello + <Dein Name> + you are + <Dein Alter> + years old. Next year, you will be <Dein Alter + 1> years old.
Generiere diesen Output
- mithilfe eines
StringBuilder
s - und mithilfe der
String.format()
-Methode.
Hier kannst du zurück zur Theorie.
Aufgabe 9 - Arrays
Löse die folgenden Aufgaben:
- Schreibe eine Methode, welche zwei Parameter übernimmt: einen beliebigen Zahlen-Array und eine beliebige Zahl. Die Methode gibt die Position der Zahl im Array aus.
- Schreibe eine Methode, welche als Parameter einen beliebigen Zahlen-Array übernimmt und die grösste Zahl im Array zurückliefert.
Hier kannst du zurück zur Theorie.