//学习李老师的课程后,自己练习写了一个与李老师示例不同的计算方法。
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);
}
* @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);
}
}