Java-使用for、while、do-while三种循环输出阶乘(有整数型、分数型)

输出1!+2!+3!+。。。+10!…的n项阶乘和

for循环

 /** for循环输出 1!+2!+3!+。。。+10!....的n项阶乘和 */
  static long factorial3(int num) {
    long sum = 1;
    for (int i = 1; i <= num; i++) {
      sum *= i;
    }
    return sum;
  }

while循环

/** while循环输出 1!+2!+3!+。。。+10!....的n项阶乘和 */
  static long factorial5(int num) {
    int sum = 1;
    int i = 1; // 循环变量初始化
    while (i <= num) { // 循环条件
      sum *= i; // 阶乘计算方法sum=sum*i
      i++; // 循环迭代
    }
    return sum;
  }

do-while循环

/** do-while循环输出 1!+2!+3!+。。。+10!....的n项阶乘和 */
  static long factorial4(int num) {
    long i = 1;
    int sum = 1;
    do {
      sum *= i;
      i++;
    } while (i <= num);
    return sum;
  }

输出1+1/2!+1/3!+。。。的前n项和

for循环

/** for循环输出 1+1/2!+1/3!+。。。的前n项和 */
  static double factorial(int num) {
    double sum = 0, number = 1;
    for (int i = 1; i <= num; i++) {
      number = number * (1.0 / i);
      sum += number;
    }
    return sum;
  }

while循环

static double factorial1(int num) {
    double sum = 0, number = 1, i = 1;
    while (i <= num) {
      number = number * (1.0 / i);
      sum += number;
      i++;
    }
    return sum;
  }

do-while循环

 /** do-while循环输出 1+1/2!+1/3!+。。。的前n项和 */
  static double factorial2(int num) {
    double sum = 0, number = 1, i = 1;
    do {
      number = number * (1.0 / i);
      sum += number;
      i++;
    } while (i <= num);
    return sum;
  }

运算结果:

请输入你要计算的阶乘数:
10
分数使用for循环计算的和为:1.7182818011463847
分数使用while循环计算的和为:1.7182818011463847
分数使用do-while循环计算的和为:1.7182818011463847
*************************************************
整数使用for循环计算的和为:3628800
整数使用do-while循环计算的和为:3628800
整数使用while循环计算的和为:3628800

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值