【问题描述】
求1(含)至 20230408(含)中每个数的和。
【答案提交】
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。
解法1:
计算并打印从1到20230408之间每个数的和:
public class Main {
public static void main(String[] args) {
long start = 1;
long end = 20230408;
long sum = 0;
for (long i = start; i <= end; i++) {
sum += i;
}
System.out.println(sum);
}
}
解法2:
我们还可以使用数学公式来优化这个过程。根据高斯求和公式,1到n的和可以表示为:
sum=n*(n+1)/2
使用这个公式,代码可以简化为:
public class Main {
public static void main(String[] args) {
long n = 20230408;
long sum = n * (n + 1) / 2;
System.out.println(sum);
}
}