java问题001,各位高手请赐教 我觉得关键在于为什么 :MCMXCVII = 1997 不懂罗马计数法。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 M CM VC VII 才对吧? 如果这样算:M=1000CM=900XC=50VII=7我算怎么得1957了?呵呵不会算..我这是用的一个判断,前一个字符如果小于后一个,那么就用它所谓的"减法"表示.但结果不对. package mytest.base;/** * 此处插入类型说明。 * 创建日期:(2002-10-22 13:51:46) * @author:YCats */public class Rome { String[][] romeNumber; /** * Rome 构造子注解。 * */ public Rome() { romeNumber = new String[4][2]; result = new String[4]; romeNumber[0][0] = new String("I"); romeNumber[0][1] = new String("V"); romeNumber[1][0] = new String("X"); romeNumber[1][1] = new String("L"); romeNumber[2][0] = new String("C"); romeNumber[2][1] = new String("D"); romeNumber[3][0] = new String("M"); for (int i = 0; i < 4; i++) { result[i] = ""; } } /** * 启动应用程序。 * @param args 命令行自变量数组 */ public static void main(java.lang.String[] args) { Rome r = new Rome(); r.getResult(1898); } private java.lang.String[] result; /** * 处理函数。 * 创建日期:(2002-10-22 14:07:08) * @param ayear int 输入年份(目前不能处理>5000年) * */ public void getResult(int ayear) { //a按位数存放年数 int[] a = new int[4]; String syear = Integer.toString(ayear); for (int i = syear.length(); i > 0; i--) { a[i - 1] = Integer.parseInt(String.valueOf(syear.charAt(syear.length() - i))); } for (int i = 0; i < a.length; i++) { if (a[i] < 4) { for (int j = 0; j < a[i]; j++) result[i] = result[i] + romeNumber[i][0]; } else if (a[i] == 4) { result[i] = romeNumber[i][0] + result[i]; } else if (a[i] == 5) { result[i] = romeNumber[i][1]; } else if (a[i] < 9) { result[i] = romeNumber[i][1]; for (int j = 5; j < a[i]; j++) result[i] = result[i] + romeNumber[i][0]; } else { result[i] = romeNumber[i][0] + romeNumber[i + 1][0]; } } for (int i = result.length; i > 0; i--) System.out.print(result[i - 1] + " "); }} to: mjjhappy (mjjhappy) 是不是路径的问题啊?我哪里好像有个打包的语句.我是在visual age for java下写的,写的很急,也没做输入。main函数里用了固定的值调功能函数 to: mjjhappy (mjjhappy) 是不是路径的问题啊?我哪里好像有个打包的语句.我是在visual age for java下写的,写的很急,也没做输入。main函数里用了固定的值调功能函数 没办法,我不会case语法啊,if 语法也是试了很久才通了。 sql嵌套查询 关于转义字符的一个问题,请回答一下...,谢谢.... 跪求高手一览:生成表格样式的图片其格式无法完美定位 TextField 的 TextListener 如何在application程序中播放声音剪辑? 字符串转换成字节数组的问题(了解底层的来) j2se,j2ee,j2me,jms各是什么用途,开发工具是什么,在哪儿在载 想看一下吗?有关swing 组件的问题? 初学JAVE需要什么软件? 请教一个问题。 怎样在运行的时候把一个面板换成另一个面板呢? 招聘java项目经理,月薪8000-10000
M=1000
CM=900
XC=50
VII=7
我算怎么得1957了?呵呵
不会算..
我这是用的一个判断,前一个字符如果小于后一个,那么就用它所谓的"减法"表示.但结果不对.
* 此处插入类型说明。
* 创建日期:(2002-10-22 13:51:46)
* @author:YCats
*/
public class Rome {
String[][] romeNumber;
/**
* Rome 构造子注解。
*
*/
public Rome() {
romeNumber = new String[4][2];
result = new String[4];
romeNumber[0][0] = new String("I");
romeNumber[0][1] = new String("V");
romeNumber[1][0] = new String("X");
romeNumber[1][1] = new String("L");
romeNumber[2][0] = new String("C");
romeNumber[2][1] = new String("D");
romeNumber[3][0] = new String("M");
for (int i = 0; i < 4; i++) {
result[i] = "";
} }
/**
* 启动应用程序。
* @param args 命令行自变量数组
*/
public static void main(java.lang.String[] args) {
Rome r = new Rome();
r.getResult(1898); }
private java.lang.String[] result;
/**
* 处理函数。
* 创建日期:(2002-10-22 14:07:08)
* @param ayear int 输入年份(目前不能处理>5000年)
*
*/
public void getResult(int ayear) { //a按位数存放年数
int[] a = new int[4];
String syear = Integer.toString(ayear);
for (int i = syear.length(); i > 0; i--) {
a[i - 1] = Integer.parseInt(String.valueOf(syear.charAt(syear.length() - i)));
}
for (int i = 0; i < a.length; i++) {
if (a[i] < 4) {
for (int j = 0; j < a[i]; j++)
result[i] = result[i] + romeNumber[i][0];
}
else
if (a[i] == 4) {
result[i] = romeNumber[i][0] + result[i];
}
else
if (a[i] == 5) {
result[i] = romeNumber[i][1];
}
else
if (a[i] < 9) {
result[i] = romeNumber[i][1];
for (int j = 5; j < a[i]; j++)
result[i] = result[i] + romeNumber[i][0];
}
else {
result[i] = romeNumber[i][0] + romeNumber[i + 1][0];
}
}
for (int i = result.length; i > 0; i--)
System.out.print(result[i - 1] + " "); }
}
是不是路径的问题啊?我哪里好像有个打包的语句.
我是在visual age for java下写的,写的很急,也没做输入。main函数里用了固定的值调功能函数
是不是路径的问题啊?我哪里好像有个打包的语句.
我是在visual age for java下写的,写的很急,也没做输入。main函数里用了固定的值调功能函数