编写Java程序,判断用户输入的数字是否为正整数,如果是则计算其阶乘
展开全部
import java.util.Scanner;
public class Demo1 {
public static void main(String[] args) {
while(1>0){
System.out.println("请输入一个正数:");
Scanner sc = new Scanner(System.in);
String str = sc.next();
if ("exit".equals(str)) {
System.out.println("系统即将关闭,谢谢使用!");
break;
}else{
boolean isNum = str.matches("^[-+]?(([0-9]+)([.]([0-9]+))?|([.]([0-9]+))?)$");
if (isNum) {
int i = Integer.parseInt(str);
int result = 1;
if (i>0) {
for (int j = 1; j < i+1; j++) {
result*= j;
}
System.out.println(str+" 的阶乘为 "+result);
}else{
System.out.println("请重新输入一个正数!");
continue;
}
}else{
System.out.println("请重新输入一个正数!");
continue;
}
}
}
}
}
public class Demo1 {
public static void main(String[] args) {
while(1>0){
System.out.println("请输入一个正数:");
Scanner sc = new Scanner(System.in);
String str = sc.next();
if ("exit".equals(str)) {
System.out.println("系统即将关闭,谢谢使用!");
break;
}else{
boolean isNum = str.matches("^[-+]?(([0-9]+)([.]([0-9]+))?|([.]([0-9]+))?)$");
if (isNum) {
int i = Integer.parseInt(str);
int result = 1;
if (i>0) {
for (int j = 1; j < i+1; j++) {
result*= j;
}
System.out.println(str+" 的阶乘为 "+result);
}else{
System.out.println("请重新输入一个正数!");
continue;
}
}else{
System.out.println("请重新输入一个正数!");
continue;
}
}
}
}
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用函数
追问
用for循环 怎么写
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询