Cześć jestem tu nowy i chciałbym poprosić czy mógłby ktoś sprawdzić mój kod.
Dopiero zacząłem studia informatyczne i na zadanie mam napisać prosty program w Pythonie a to co napisałem nie do końca spełnia oczekiwania. Może macie jakiś pomysł co mógłbym zmienić w kodzie żeby zadziałało na 100%.
Otóż mam napisać program który zamieni arabskie liczby (w zakresie od 1 do 3999) na rzymskie. Przy czym :
1 = I , 5 = V, 10 = X, 50 = L, 100 = C, 500 = D, 1000 = M
Liczby powinny stać od lewej strony malejąco.
Np. 1975 = MDCCCCLXXV
Oto mój kod :
x = (int(input('Enter a number: ')))
j = 6 #Lista objektow
c = ""
A = [1 , 5, 10, 50, 100, 500, 1000]
R = ["I", "V", "X", "L", "C", "D", "M"]
if x > 3999:
print('The number is to big')
else:
while j > 0:
while x > 0:
if x > A[j]:
x -= A[j]
c += R[j]
else:
j = j - 1
x -= A[j]
c += R[j]
break
print(c)
print('End')
Przy wpisaniu liczby 1975 wychodzi wszystko jak ma być, ale jak wpisuje inne wartości to wyniki są złe.
Macie może jakiś pomysł?
Pozdrawiam
Galeleo