37 lines
884 B
Groovy
37 lines
884 B
Groovy
aufgaben_datentypen.md
|
|
|
|
|
|
#Aufgaben
|
|
|
|
###Aufgabenstellung:
|
|
|
|
Die Römer hatten ihre eigene Art, Zahlen zu schreiben, und sie waren ziemlich stolz darauf! Deine Aufgabe ist es, eine Klasse zu erstellen, die eine Dezimalzahl in eine römische Zahl umwandelt.
|
|
|
|
###Lösung
|
|
```
|
|
class Roman {
|
|
|
|
static def romanNumerals = [
|
|
1000: "M", 900: "CM", 500: "D", 400: "CD",
|
|
100: "C", 90: "XC", 50: "L", 40: "XL",
|
|
10: "X", 9: "IX", 5: "V", 4: "IV",
|
|
1: "I"
|
|
]
|
|
|
|
static def toRoman(int number) {
|
|
def result = ""
|
|
for (entry in romanNumerals.entrySet()) {
|
|
while (number >= entry.key) {
|
|
result += entry.value
|
|
number -= entry.key
|
|
}
|
|
}
|
|
return result
|
|
}
|
|
|
|
static void main (String[] args) {
|
|
def decimalNumber = 2000
|
|
println("Die Dezimalzahl $decimalNumber wird in römischen Zahlen geschrieben als: ${toRoman(decimalNumber)}")
|
|
}
|
|
}
|
|
``` |