一道关于流程控制的JAVA题,请教大家谢谢了
importjava.util.Scanner;/***编写JAVA程序,实现接收用户输入的正整数,输出该数的阶乘要求:限制输入的数据在1-10之间,无效数据进行提示,结...
import java.util.Scanner;
/**
* 编写JAVA程序,实现接收用户输入的正整数,输出该数的阶乘
要求:限制输入的数据在1-10之间,无效数据进行提示,结束程序
输出结果如:4!=1*2*3*4=24
*/
public class FactDemo {
/**
* @param args
*/
public static void main(String[] args) {
//定义变量接收用户输入,计算阶乘,累计表达式
int number,fact=1;
String msg="";
Scanner input=new Scanner(System.in);
//提醒输入
System.out.println("请输入一个10以内的正整数:");
number=input.nextInt();
//验证有效性
if(number>10 || number<1){
System.out.println("数据无效");
return;
}
System.out.print(number+"!=");
//计算阶乘
for(int i=1;i<number;i++){
msg+=i+"*";
fact*=i;
}
//组合结果,并显示
fact*=number;
msg+=number+"="+fact;
System.out.println(msg);
}
}
我是菜鸟,不懂这个代码的过程和原理,尤其是后面的,看了半天有点迷糊不清
求文字解析!!分没了请见谅,谢谢大家! 展开
/**
* 编写JAVA程序,实现接收用户输入的正整数,输出该数的阶乘
要求:限制输入的数据在1-10之间,无效数据进行提示,结束程序
输出结果如:4!=1*2*3*4=24
*/
public class FactDemo {
/**
* @param args
*/
public static void main(String[] args) {
//定义变量接收用户输入,计算阶乘,累计表达式
int number,fact=1;
String msg="";
Scanner input=new Scanner(System.in);
//提醒输入
System.out.println("请输入一个10以内的正整数:");
number=input.nextInt();
//验证有效性
if(number>10 || number<1){
System.out.println("数据无效");
return;
}
System.out.print(number+"!=");
//计算阶乘
for(int i=1;i<number;i++){
msg+=i+"*";
fact*=i;
}
//组合结果,并显示
fact*=number;
msg+=number+"="+fact;
System.out.println(msg);
}
}
我是菜鸟,不懂这个代码的过程和原理,尤其是后面的,看了半天有点迷糊不清
求文字解析!!分没了请见谅,谢谢大家! 展开
1个回答
展开全部
public static void main(String[] args) {
int number,fact=1; //定义变量,number是用户的输入值,fact是结果值
String msg=""; //定义要显示的信息的变量
Scanner input=new Scanner(System.in); //等待并接收用户输入的语句
System.out.println("请输入一个10以内的正整数:"); //在屏幕上打印提示语句
number=input.nextInt(); //如果用户有输入,则把输入的值放入到number变量中
if(number>10 || number<1){ 如果用户的输入值不在1到10以内,则打印错误信息并退出程序
System.out.println("数据无效");
return;
}
//如果输入正确则继续执行
System.out.print(number+"!="); //屏幕打印出结果的前部分则,4!=
//计算阶乘
for(int i=1;i<number;i++){
msg+=i+"*";//提示信息的组合如,1*2*3*4
fact*=i; //结果值的计算
}
//组合结果,并显示
fact*=number; //最后一位的计算
msg+=number+"="+fact; //最后一位的信息组合
System.out.println(msg); //打印最后结果信息
}
int number,fact=1; //定义变量,number是用户的输入值,fact是结果值
String msg=""; //定义要显示的信息的变量
Scanner input=new Scanner(System.in); //等待并接收用户输入的语句
System.out.println("请输入一个10以内的正整数:"); //在屏幕上打印提示语句
number=input.nextInt(); //如果用户有输入,则把输入的值放入到number变量中
if(number>10 || number<1){ 如果用户的输入值不在1到10以内,则打印错误信息并退出程序
System.out.println("数据无效");
return;
}
//如果输入正确则继续执行
System.out.print(number+"!="); //屏幕打印出结果的前部分则,4!=
//计算阶乘
for(int i=1;i<number;i++){
msg+=i+"*";//提示信息的组合如,1*2*3*4
fact*=i; //结果值的计算
}
//组合结果,并显示
fact*=number; //最后一位的计算
msg+=number+"="+fact; //最后一位的信息组合
System.out.println(msg); //打印最后结果信息
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询