(透过现象看本质)分析与求3!+5!+7!+9!相同
1+4--s=s+4
1+4+7----s=s+7
1+4+7+10-----s=s+10
假设:
int s=0;//最终结果
int r=0;//保存每个括号里面的和
for(int i=1;i<=n;i+=3){
r+=i;
s+=r;
}
n=12,11
if((n-1)%3!=0){
s += r+n;
}
如n=4、n=7;n=12
i r s n
1 0 0
1 1
4 5 6
7 12 18
11 23 41
代码如下:
public static void main(String[] args){
Scanner s = new Scanner(System.in);
System.out.println("请输入数值n:");
int n = s.nextInt();
int s=0;
int sum = 0;
for(int i=1;i<=n;i+=3){
sum +=i;
s+=sum;
}
if((n-1)%3!=0){
s = s+sum+n;
}
System.out.println(s);
}
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.println("请输入数值n:");
int n = s.nextInt();
int result = 0;
int sum = 0;
for (int i = 1; i <= n; i += 3) {
sum += i;
result += sum;
}
if ((n - 1) % 3 != 0) {
result += sum + n;
}
System.out.println(result);
s.close();
}