a013-1: 羅馬數字
如果生活在數世紀之前的古羅馬,你應該用過 V 來表示五。V 和 5 這兩個符號都可以用來表示數目五。用來表示數目的符號稱作數字。而羅馬人用來表示數目的符號就是羅馬數字。
以下是七個基本的羅馬數字︰
羅馬數字 數目
I 1
V 5
X 10
L 50
C 100
D 500
M 1,000
所有其他的數目都是由這些數字組合而成。數目都是由左寫到右,通常值是等於組成的羅馬數字加起來。
例如十七可以表示為
X+V+I+I=XVII
10+5+1+1=17
表示羅馬數字可以使用減法來取代加法的規則。例如四可以不用四個一相加來表示 IIII,而採用五減一來表示 IV。利用這類規則,羅馬人能夠減化許多數目的表示方式,例如 IX 取代 VIIII 表示 9,及 CD 取代 CCCC 表示 400。
今日我們並不確定羅馬符號的起源為何。例如符號 V 的起源主要有兩個理論。有些學者認為五最早是用握拳、拇指在外的手勢來表示。最後以象形文字書寫而簡化為 V。
#數字轉羅馬數字
def roman(number):
ROMANS = (
('MMM', 3000),
('MM', 2000),
('M', 1000),
('CM', 900),
('DCCC',800),
('DCC', 700),
('DC', 600),
('D', 500),
('CD', 400),
('CCC',300),
('CC',200),
('C', 100),
('XC', 90),
('LXXX', 80),
('LXX', 70),
('LX', 60),
('L', 50),
('XL', 40),
('XXX', 30),
('XX', 20),
('X', 10),
('IX', 9),
('VIII',8),
('VII', 7),
('VI', 6),
('V', 5),
('IV', 4),
('III', 3),
('II', 2),
('I', 1))
result=""
for roman,value in ROMANS:
while number>=value:
number-=value
result+=roman
print(result)
return result
print ("10進制轉羅馬數字")
intX=int(input("請輸入數字 :"))
print()
print(roman(intX))
============ RESTART: D:/Python_APSC/a013-1.py ==============
10進制轉羅馬數字
請輸入數字 :1234
M
MCC
MCCXXX
MCCXXXIV
MCCXXXIV
>>>
===================== RESTART: D:/Python_APSC/a013-1.py =====================
10進制轉羅馬數字
請輸入數字 :4981
MMM
MMMM
MMMMCM
MMMMCMLXXX
MMMMCMLXXXI
MMMMCMLXXXI
>>>
===================== RESTART: D:/Python_APSC/a013-1.py =====================
10進制轉羅馬數字
請輸入數字 :874
DCCC
DCCCLXX
DCCCLXXIV
DCCCLXXIV
>>>
訂閱:
張貼留言 (Atom)
WOKWI DHT22 & LED , Node-Red + SQLite database
WOKWI DHT22 & LED , Node-Red + SQLite database Node-Red程式 [{"id":"6f0240353e534bbd","type":"comment&...
-
python pip 不是内部或外部命令 -- 解決方法 要安裝 Pyqt5 1. 首先,開啟命令提示字元。 2. 輸入 pip3 install pyqt5 好像不能執行 ! ! 錯誤顯示 : ‘ pip3 ’ 不是內部或外部命令、可執行的程式或批...
-
課程講義 下載 11/20 1) PPT 下載 + 程式下載 http://www.mediafire.com/file/cru4py7e8pptfda/106%E5%8B%A4%E7%9B%8A2-1.rar 11/27 2) PPT 下載...
-
• 認 識 PreFix、InFix、PostFix PreFix(前序式):* + 1 2 + 3 4 InFix(中序式): (1+2)*(3+4) PostFix(後序式):1 2 + 3 4 + * 後 序式的運算 例如: 運算時由 後序式的...
沒有留言:
張貼留言