用JAVA写个程序,用户输入一个3999以内的阿拉伯数字,可以输出对应的罗马数字
3个回答
展开全部
public class Test {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int s = Integer.parseInt(sc.next());
System.out.println(toRome(s));
sc.close();
}
// 阿拉伯数字转罗马数字:
// 把所有小数字在前的组合也作为基本数字,再做一个对应的数值表就可以解决问题了。
// I、V、X、 L、 C、 D、 M
// 1.5、10、50、100、500、1000
private static String toRome(int aNumber){
if(aNumber < 1 || aNumber > 3999){
return "-1";
}
int[] aArray = {1000,900,500,400,100,90,50,40,10,9,5,4,1};
String[] rArray = {"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"};
String rNumber = "";
for(int i=0; i<aArray.length; i++){
while(aNumber >= aArray[i]){
rNumber += rArray[i];
aNumber -= aArray[i];
}
}
return rNumber;
}
}
追问
谢谢你的回答,可是在eclipse里不能运行啊
追答
Run As
展开全部
System.out.print(你输出的值或变量);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询