Einzelnen Beitrag anzeigen
Alt 05.06.07, 14:30   #26 (permalink)
J.U.B.
 
Registriert seit: 30.05.07
J.U.B. Leistung: Facit NTK
J.U.B. eine Nachricht über ICQ schicken
Likes: 0
Standard

Hier meine Version in PVX:

Code:
PRINT "Bitte geben Sie eine ganze Dezimalzahl ein,"
PRINT "f",CHR(252),"r die berechnung ins R",CHR(246),"mische Zahlensystem."
INPUT "Eingabe: ",E
E=INT(E)

Dim rz$(29),dez(29)
rz$(1) = "A"
rz$(2) = "MA"
rz$(5) = "M"
rz$(6) = "CM"
rz$(9) = "D"
rz$(10) = "CD"
rz$(13) = "C"
rz$(14) = "XC"
rz$(17) = "L"
rz$(18) = "XL"
rz$(21) = "X"
rz$(22) = "IX"
rz$(25) = "V"
rz$(26) = "IV"
rz$(29) = "I"

dez(1) = 5000
dez(2) = 4000
dez(5) = 1000
dez(6) = 900
dez(9) = 500
dez(10) = 400
dez(13) = 100
dez(14) = 90
dez(17) = 50
dez(18) = 40
dez(21) = 10
dez(22) = 9
dez(25) = 5
dez(26) = 4
dez(29) = 1

result$=""
I=1
WHILE I<>29
WHILE E-dez(I)>=0.0000
IF MOD(I,2)=1 THEN {
	result$ = result$+rz$(I,1)
} ELSE {
	result$ = result$+rz$(I,2)
}
E = E - dez(I)
WEND
IF MOD(I,2)=0 THEN {
	I+=3
} ELSE {
	I++
}
WEND

PRINT result$
Diese Aufgabe ist mit der Subtraktion, allerdings werden bei zahlen höher als "19999" das A öfter als 4 mal hintereinander eingesetzt also zum beispiel
20000 = AAAA
J.U.B. ist offline   Mit Zitat antworten
 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61