编写Java程序,判断用户输入的数字是否为正整数,如果是则计算其阶乘(使用for循环实现)如果输入的数字不是正数,要求重新输入。

package com.xjc;

import java.util.Scanner;

public class PanDuanZhengShuJiSuanJieCheng {

public static void main(String[] args) {
	// TODO Auto-generated method stub
	// 判断输入的数是不是正整数,如果是,就计算它的阶乘
	Scanner input = new Scanner(System.in);
	System.out.println("请输入一个正整数:");
	for (;;) {// 最外层使用一个for循环实现重复输入判断
		int a = input.nextInt();// 输入要判断的数,nextInt已经完成了限制输入为整数
		int jiecheng = 1;// 定义一个变量,用于储存计算的阶乘结果
		if (a > 0) {// 判断是不是正整数
			for (int i = 1; i <= a; i++) {// 是正整数,计算阶乘并输出
				jiecheng *= i;
			}
			System.out.println(a + "的阶乘是:" + jiecheng);
			break;// 这个break不能省,是阶乘并输出后,这个brake用于结束整个循环,结束程序
		} else {// 不是正整数,输出错误提示,并进入下一次循环,重新输入并判断输出,直到正确输入正整数
			System.out.println("输入的数据不满足条件!只能输入正整数,请从新输入一个正整数:");
		}
	}
}

}

你可能感兴趣的:(编写Java程序,判断用户输入的数字是否为正整数,如果是则计算其阶乘(使用for循环实现)如果输入的数字不是正数,要求重新输入。)