羅馬數字和整數相互轉換

2022-08-03 15:03:30 字數 1107 閱讀 1233

整數轉換成羅馬數字:

羅馬數字的基本型為:i=1,v=5,x=10,l=50,c=100,d=500,m=1000,相同的羅馬數字最多不能超過三個。所以對於4只能表示為5-1即iv,左減右加。

同理,9=ix,40=xl,90=xc,400=cd,900=cm。根據這些基本型,可以通過貪心演算法,每次匹配最大值得到羅馬數字.

//

整數轉化成羅馬數字

//貪心演算法,每次取匹配最大值

public

static string inttoroman(int

number) ;

string str = ;

string roman = "";

int i = 0;

while (number != 0)

else

i++;

}return

roman;

}

羅馬數字轉換成整數:

首先要來了解一下羅馬數字表示法,基本字元有7個:i,v,x,l,c,d,m,分別表示1,5,10,50,100,500,1000。

在構成數字的時候,有下列規則:

1、相同的數字連寫,所表示的數等於這些數字相加得到的數,如:ⅲ = 3;

2、小的數字在大的數字的右邊,所表示的數等於這些數字相加得到的數, 如:ⅷ = 8;ⅻ = 12;

3、小的數字,(限於ⅰ、x 和c)在大的數字的左邊,所表示的數等於大數減小數得到的數,如:ⅳ= 4;ⅸ= 9;

4、正常使用時,連寫的數字重複不得超過三次。

//

羅馬數字轉化成整數

public

static

intromantoint(string s)

else

lastv =curv;

}result +=sub;

return

result;

}public

static

int getromanvalue1(char

c)

public

static

int getromanvalue(char

c) }

整數與羅馬數字相互轉換 Python

羅馬數字總共有7個 i 1 v 5 x 10 l 50 c 100 d 500 和m 1000 運算規則 重複數次 乙個羅馬數字重複幾次,就表示這個數的幾倍。例如iii表示的就是3 右加左減 在較大的羅馬數字的右邊記上較小的羅馬數字,表示大數字加小數字。例如viii表示的就是8 在較大的羅馬數字的左...

羅馬數字轉換為整數

給定乙個羅馬數字 s s,將羅馬數字轉換成整數。如羅馬數字i,ii,iii,iv,v分別代表數字 1,2,3,4,51,2,3,4,5。首先要來了解一下羅馬數字表示法,基本字元有 7 7 個 i v x l c d m,分別表示 11 5 5 1010 505 0 10010 0 50050 0 1...

羅馬數字轉換為整數

羅馬數字包含以下七種字元 i,v,x,l,c,d 和 m。字元 數值 i 1 v 5 x 10 l 50 c 100 d 500 m 1000 例如,羅馬數字 2 寫做 ii 即為兩個並列的 1。12 寫做 xii 即為 x ii 27 寫做 xxvii,即為 xx v ii 通常情況下,羅馬數字中...