Untitled
unknown
plain_text
a year ago
1.8 kB
5
Indexable
open class Animal(val visina: Int, val tezina: Double) {
fun ispisiPodatke() {
println("Visina: $visina cm, Težina: $tezina kg")
}
}
class Cat(visina: Int, tezina: Double, var ime: String?, var boja: String?) : Animal(visina, tezina) {
fun setImeOnly(ime: String?) {
this.ime = ime
}
fun setIme(ime: String?, boja: String?) {
this.ime = ime
this.boja = boja
}
fun ispisiCatPodatke() {
ispisiPodatke()
println("Ime: ${ime ?: "nepoznato"}, Boja: ${boja ?: "nepoznata"}")
}
}
enum class Vrsta {
LABRADOR,
BULDOG,
ZLATNI_RETRIVER,
HASKI
}
class Dog(visina: Int, tezina: Double, val vrsta: Vrsta) : Animal(visina, tezina) {
fun ispisiDogPodatke() {
ispisiPodatke()
println("Vrsta: $vrsta")
}
}
fun main() {
val psi = listOf(
Dog(60, 30.0, Vrsta.LABRADOR),
Dog(50, 25.0, Vrsta.BULDOG),
Dog(55, 32.0, Vrsta.ZLATNI_RETRIVER),
Dog(50, 28.0, Vrsta.HASKI)
)
val macke = listOf(
Cat(30, 4.5, null, null),
Cat(25, 3.0, null, null),
Cat(35, 5.0, null, null)
)
// Input od korisnika za ime i boju mačke
for (i in macke.indices) {
println("Unesite ime za mačku ${i + 1}:")
val ime = readLine()
println("Unesite boju za mačku ${i + 1}:")
val boja = readLine()
if (boja != null) {
macke[i].setIme(ime, boja)
} else {
macke[i].setImeOnly(ime)
}
}
// Ispis
println("\nPodaci o psima:")
for (pas in psi) {
pas.ispisiDogPodatke()
}
println("\nPodaci o mačkama:")
for (macka in macke) {
macka.ispisiCatPodatke()
}
}
Editor is loading...
Leave a Comment