请高手们指点JAVA迷津!感激不尽!

来源:百度知道 编辑:UC知道 时间:2024/05/26 07:40:42
用for或者while或者do while做下题:
从键盘循环输入数字:屏幕输出先显示1至此数字间的所有整数,然后计算1到此数字的累加和并计算此数字的阶乘,随后程序等待下一次的输入;如果输入0则结束循环退出程序。
谢谢各位帮帮忙啊!

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Test {

public static void main(String[] args) {
while(true)
{
try {
String str= new BufferedReader
( new InputStreamReader(System.in) ).readLine();
if(str.equals("0"))
break;
else
{
int num=Integer.parseInt(str);
int sum=0;
for(int i=1;i<=num;i++)
{
System.out.println(i);
sum=sum+i;
}
System.out.println("1到"+num+"的和为:"+sum);

}

} catch (IOException e) {
e.printStackTrace();
}
catch(Exception e)
{
System.out.println("输入的不是数字,请重新输入");
continue;
}
}
}

}

楼上的没写阶乘.
这是我的:
import java.math.BigDecimal;
import java.util.Scanner;

public class Test {
public static vo