编写Java程序,实现接受用户输入的正整数,输出该数的阶乘。例如,输入数据4,则输出4!=1x2x

编写Java程序,实现接受用户输入的正整数,输出该数的阶乘。例如,输入数据4,则输出4!=1x2x3x4=24。要求:限制输入的数据为1~10,否则提示“无效数据”并结束... 编写Java程序,实现接受用户输入的正整数,输出该数的阶乘。例如,输入数据4,则输出4!=1x2x3x4=24。
要求:限制输入的数据为1~10,否则提示“无效数据”并结束程序
展开
 我来答
zh52722
2014-11-07 · TA获得超过389个赞
知道小有建树答主
回答量:325
采纳率:75%
帮助的人:183万
展开全部
public class StringTest {

public static void main(String[] args){
Scanner s = new Scanner(System.in); 
        System.out.println("请输入字符串:"); 
        Integer sum = 1;
        while (true) {
         Integer i = s.nextInt();
         if (i<0 || i>10) {
System.err.println("无效数字");
break;
}else {
for (int j = 1; j < i+1; j++) {
sum = sum *j;
}
System.err.println(sum);
sum = 1;
}
        } 
}

}
seed0602
推荐于2017-08-30 · TA获得超过2971个赞
知道大有可为答主
回答量:2304
采纳率:0%
帮助的人:2564万
展开全部
import java.lang.Integer;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class factorial{
    public static void main(String[] args){
String regexPattern = "\\d|10";
Pattern pattern = Pattern.compile(regexPattern);
Matcher matcher = pattern.matcher(args[0]);
if (args.length > 1){
System.out.println("输入数据太多");
}else if(!matcher.matches()){
            System.out.println("无效数据");
}else{
String str = "1";
int input = Integer.valueOf(args[0]).intValue();
int result = 1;
for (int i=1; i<=input; i++){
result *= i;
if (i >= 2){
str = str + "*" + i;
}

}
System.out.println("计算结果为: " + args[0] + "!=" + str + "=" + result);
        }
}
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
玫瑰烽火
2017-06-22
知道答主
回答量:12
采纳率:0%
帮助的人:3.1万
展开全部
public static void main(String[] args) {
Scanner index = new Scanner(System.in);
System.out.println("请输入一个正整数:");
try {
int num = index.nextInt();
if (num > 0) {
String total = "1";
for (int i = 2; i <= num; i++) {
total = total + "*" + i;
}
System.out.println(num + "!=" + total);
} else {
System.out.println("你输入的不是正整数");
}
} catch (Exception e) {
System.out.println("你输入的不是正整数");
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
扛把子ZZY
2017-06-29 · 超过12用户采纳过TA的回答
知道答主
回答量:77
采纳率:63%
帮助的人:15.1万
展开全部
public static void main(String[] args) {
int a;
Scanner sc=new Scanner(System.in);
a=sc.nextInt();
int sum=a;
for(int i=0;i<a;i++){
sum*=(a-1);
a=a-1;
}
System.out.println(sum);
}

抱歉,我没审清题意。这个回答不好
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式