38_ROMAI_ARAB

38_ARAB_ROMAI_2

ARAB_ROMAI_2.py

romai = [[" ", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"],

[" ", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"]]

szam = int(input("Arab szam: "))

i = 0

romaiszam = " "

while szam != 0:

     szj = szam % 10

      szam = szam // 10

     romaiszam = romai[i][szj] + romaiszam

     i += 1

print(romaiszam)

Soronkénti Magyarázat

1. Római számok tárolása kétdimenziós listában

pythonromai = [[" ", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"], [" ", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"]]

  • Ez egy kétdimenziós lista, amely az arab számok római megfelelőit tárolja.

  • Első lista: Az egyes számjegyek római megfelelői (1-től 9-ig).

  • Második lista: A tízes helyiérték megfelelő római számai (10-től 90-ig).

  • Az üres " " karakter az indexelési könnyítés miatt van ott, így az 1-től 9-ig tartó számok közvetlenül elérhetőek.

2. Felhasználói bemenet bekérése

pythonszam = int(input("Arab szam: "))

  • A felhasználótól bekérünk egy arab számot, amelyet római számmá szeretne alakítani.

  • Az int() függvény biztosítja, hogy a beírt érték egész szám legyen.

3. Inicializálás: index és üres karakterlánc

pythoni = 0 romaiszam = " "

  • i változó: A ciklus során meghatározza a helyiértéket (egyesek, tízesek stb.).

  • romaiszam változó: Egy üres szövegként indul, amelyhez fokozatosan hozzáadjuk a római számokat.

4. Ciklus: Az arab szám átalakítása római számmá

pythonwhile szam != 0:

  • A ciklus addig fut, amíg az szam nem lesz 0, vagyis minden helyiértéket feldolgozunk.

5. Az utolsó számjegy kiválasztása

pythonszj = szam % 10

  • A % operátor segítségével megkapjuk az arab szám utolsó számjegyét.

  • Például: ha szam = 57, akkor szj = 7.

6. Az utolsó számjegy eltávolítása

pythonszam = szam // 10

  • Az // operátor az egész osztás műveletét végzi el.

  • Ezzel eltávolítjuk az utolsó számjegyet, és a szám többi része marad.

  • Példa: ha szam = 57, akkor a művelet után szam = 5.

7. Római számok összeállítása

pythonromaiszam = romai[i][szj] + romaiszam

  • A program a megfelelő helyiértéket (1-es vagy 10-es) használja az i változó alapján.

  • A római számokat balról jobbra rakjuk össze,

A mátrix elemeinek e felsorolása kerek zárójelek között, soronként történik. A sorokat vesszővel választjuk el egymástól.

0

1

2

3

4

5

6

7

8

9

1

''

I

II

III

IV

V

VI

VII

VIII

IX

2

''

X

XX

XXX

XL

L

LX

LXX

LXXX

XC

3

''

C

CC

CCC

CD

D

DC

DCC

DCCC

CM

A mátrixot tekintjuk egy táblázatnak, melynek elemeire a sor és az oszlop indexszel hivatkozhatunk: romai[sor][oszlop].A sor és az oszlopok lehetséges értékeit a 0..3 és a 0..9 intervallumokkal adjuk meg

ARAB_ROMAI_2.py

Az Idők Keringésében:
Az Arab Szám Római Átváltozása

Egyszer volt, hol nem volt, egy hős programozó, aki elhatározta, hogy megmutatja, miként varázsolható át a modern arab szám a régi idők dicső római jelképeivé. A következő kódrészletekben a hősünk lépésről lépésre elindul ezen az átalakuláson, miközben a kód maga is a múlt és a jelen közti kapcsolódás szimbóluma.

romai = [[" ", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"], [" ", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"]]

Itt a hősünk létrehozott egy kétszintű listát, ahol az első sor az egyes helyiértékek (az 1-től 9-ig terjedő arab számokhoz tartozó római jegyek), a második sor pedig a tízeseknek megfelelő római alakok gyűjteményét tartalmazza. Ezek az ősi jelképek titkos kincsestárai várják, hogy a modern értékekbe ágyazzák a múlt dicsőségét.

szam = int(input("Arab szam: "))

Ebben a sorban a hősünk bekéri a felhasználótól azt az arab számot, melyet át kíván varázsolni római alakba. Így az ép folyamat a modern jelek és az ősi titkok találkozásával kezdődik.

i = 0romaiszam = " "

Elindítjuk az átalakulás folyamatát! A változó i majd végigköveti a helyiértékek sorrendjét, míg a romaiszam egy üres szöveget képvisel, amibe fokozatosan belefűzzük az átváltozott római jegyeket.

while szam != 0:

Ez a ciklus adja meg az átalakulás ritmusát: addig fut, amíg az arab szám maradéka nem fogy el, így lépésről lépésre bontja le a számot.

szj = szam % 10

Itt a hősünk kiválasztja a legkisebb helyiértéket – azaz a szám utolsó jegyét. Ez a részlet lesz az első, melyet a régi római szimbólumok világába kerül.

szam = szam // 10

Ez a lépés jelzi, hogy a hősünk már nem kell a már átalakított számjegyre gondoljon, hanem továbblép a következő, magasabb helyiértékre. Így a modern szám fokozatosan kikerül a folyamatból.

romaiszam = romai[i][szj] + romaiszam

Most történik a varázslat! A jelenlegi helyiértékre (amelyet az i ír le) a hozzá tartozó római jelképet (a szj indexű elemet) illeszti be a már meglévő, részleges római számban. Így a számjegyek "fordított" sorrendben rakódnak össze – mintha az idő keringése megfordulna.

i += 1

A változó i növekedésével a hősünk lépésről lépésre küszöböket lép át, így minden további számjegy a megfelelő helyiértékre kerül, a régi és az új rejtett kapcsolatát erősítve.

print(romaiszam)

Végül megjelenik a varázslat gyümölcse: a képernyőn kirajzolódik a modern arab szám római átváltozása, az idő tükörképe, ahol a múlt dicsősége ötvöződik a jelen egyszerűségével.

Ahogy a program lefutott, a felhasználók csodálattal nézték, ahogy az arab számok újjászülettek a régi idők stílusában, megidézve a történelem mély titkait és az idő örök körforgását. A hős programozó ezzel bizonyította, hogy a kód nem csupán utasítások halmaza, hanem az emberi kreativitás és a múlt örökségének élő meséje is.

Remélem, élvezted ezt a mesés utazást az átalakulás birodalmában, ahol a számok és idő keringése egyetlen kódsorban válik valósággá!

Készítsd el weboldaladat ingyen! Ez a weboldal a Webnode segítségével készült. Készítsd el a sajátodat ingyenesen még ma! Kezdd el