JAVA:计算1+2+...+100的和以及m!

import java.util.Scanner;
public class ff {
public static void main(String[] args) {
// TODO 自动生成的方法存根
int sum=0,n=1,m=0; //进入while循环之前的变量必须初始化
long fct=1; //阶乘的成绩数据可能很大,所以声明为long型
do{
sum +=n;
n++;
}while(n<=100);
System.out.println(“sum=1+2+…+100=”+sum);
Scanner sc=new Scanner(System.in);
System.out.print(“请输入阶乘数:”);
m=sc.nextInt();
n=1; //注意此处给n重新赋值为1的重要性
do{
fct *=n;
n++;
}while(n<=m);
System.out.println(“fct=1*1*…*”+m+”=”+fct);

}

}
运行结果
这里写图片描述
算法分析
设置总和的变量用sum表示,控制循环的变量用n表示,阶乘数用m表示并初始化为1,三者均用整型数据;阶乘的成绩fct数据可能很大,所以声明为long型,并且初始量为1。由于使用n做控制循环的变量,当求和计算完成后,应该把循环变量重新赋值为1(即从1开始计算阶乘的乘积)。
知识点
do…while语句
1)定义:先执行循环体的语句序列,再检查条件,如果条件成立,则再次执行循环体的代码。
2)格式:do {
语句或语句序列
}
while(<条件表达式>);

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值