s n h m r u
i

Übungen

Aufgabe 1 - Datentypen

Ergänze die Tabelle zu den Datentypen in Kotlin. Lies bei Bedarf im Fachkonzept nach.

Art der Daten Datentyp in Kotlin
Ganze Zahlen
Double
Wahrheitswerte
String

Zusatzaufgabe: Finde heraus warum der Datentyp Double so heißt.

Aufgabe 2 - Nichts als Fehler

Die folgenden Codebeispiele enthalten jeweils mindestens einen Fehler. Beschreibe die Fehler und korrigiere den Code so, dass er fehlerfrei ist.

// a)
var karte = Karte("Herz", "Dame")
karte.druckeKarte()
var karte = Karte("Pik", 10)
karte.druckeKarte()
// b)
val karte = Karte("Karo", "K")
karte.druckeKarte()
karte = Karte("Kreuz", "4")
karte.druckeKarte()
// c)
... hier kommt bald noch mehr ...

Aufgabe

Schreibe ein Programm, das zwei (feste) Karten erzeugt. Diese sollen ausgegeben werden. Der Blackjack-Wert soll (als Summe) ausgegeben werden.

Aufgabe 3 - Person

Im BlueJ-Projekt person.zip ist die Klasse Person definiert. Lade das Projekt herunter, entpacke es und öffne es in BlueJ.

  • Experimentiere grafisch - also per Mausklick - mit der Klasse. Erzeuge verschiedene Person-Objekte und rufe deren Methoden auf.
  • Wende deine Beobachtungen an, um im Codepad Person-Objekte zu erzeugen und zu verwenden.
  • Nutze die visuelle Darstellung per Mausklick oder das Codepad, um die Begriffe Konstruktor, Klasse, Objekt, Attribut, Datentyp, Methode, Parameter und Rückgabe zu erklären.
Alternativ zum Codepad kannst du auch den Kotlin-Editor unten verwenden:
import java.time.LocalDate

class Person(
	var name: String,
	val geburtstagTag: Int,
	val geburtstagMonat: Int,
	val geburtsjahr: Int
) {
	fun berechneAlter(): Int {
		val heute = LocalDate.now()
		val geburtstag = LocalDate.of(geburtsjahr, geburtstagMonat, geburtstagTag)
		return geburtstag.until(heute).years
	}

	fun istVolljaehrig(): Boolean {
		return berechneAlter() >= 18
	}

	fun druckeInfo() {
		println("$name, geboren am %02d.%02d.%04d, ist %d Jahre alt.".format(geburtstagTag, geburtstagMonat, geburtsjahr, berechneAlter()))
	}

	fun berechneAlterAm(tag: Int, monat: Int, jahr: Int): Int {
		val referenzdatum = LocalDate.of(jahr, monat, tag)
		val geburtstag = LocalDate.of(geburtsjahr, geburtstagMonat, geburtstagTag)
		return geburtstag.until(referenzdatum).years
	}
}

fun main() {
    val person1 = Person(...)


}

Aufgabe 3 - Kreuzworträtsel

Suche

v
100.123.1.7 Übungen
Kopieren durch Anklicken

Rückmeldung geben