我需要将阿拉伯语转换为罗马语。我有一个方法编号(int place),它从某个数字中获取每个数字。
示例:5821,其中数字方法0 = 1;数字(2)= 8等
我现在需要编写一个方法(带帮助器),将这些字符转换为罗马数字。这通常不会很困难,但我不能使用数组,这种方法必须适用于三种情况(1,10和100);所以我不能为每个数字写一个案例(否则我可以多次切换或者如果要覆盖案例)。
想点什么?
答案 0 :(得分:2)
由于这是作业,下面的伪代码故意不完整。
string toRomanString (int aNumber)
{
string result = "";
if (aNumber < 1 || aNumber.toString().length() > 4)
throw NotImplementedException();
for(int i=0; i < aNumber.toString().length(); i++)
{
if(i = 0)
{
throw NotImplementedException();
}
elseif(i = 1)
{
throw NotImplementedException();
}
elseif(i = 2)
{
throw NotImplementedException();
}
else
{
throw NotImplementedException();
}
}
}
答案 1 :(得分:2)
也许您不应考虑获取数字,而应考虑获取值。将您显示的值视为值的总和,每个值都可以用罗马数字表示。
convert(5000) + convert(800) + convert(20) + convert(1)