假设1到n的和最接近10000,计算n

//学习李老师的课程后,自己练习写了一个与李老师示例不同的计算方法。
package com.hycas;
public class WhileTest2 {
 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  //假设1到n的和最接近10000,计算n
  int n = 1;       //递增变量
  int sum1 = 0;    //存放上一次的和
  int sum2 = 0;    //存放本次的和
  int result = 0;  //存放结果
  
  while(true){
   sum2 += n++; //完成累加,同时变量n递增
   
   //取绝对值,可以节省代码
   if(Math.abs(10000-sum2)>Math.abs(10000-sum1)){
    result = n - 2;
    //System.out.println("testtestest");
    break;
   }
   
   sum1 = sum2;
  }
  
  System.out.println("假设1到n的和最接近10000,则n的值为:" + result);
  System.out.println("sum1 = " + sum1 + ", sum2 = " + sum2);
  System.out.println("最接近10000的和为:" + sum1);
 }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值