#include <stdio.h>
//再帰を用いて1からnまでの二乗和1^2 + 2^2 + 3^2 + ... + n^2を計算する
int rec(int n){
if (n == 1){
return n*n;
}
else{
return n*n+rec(n-1);
}
}
int main(void) {
int n = 4;
printf("1から%dまでの二乗和の値は%d\n", n
, rec
(n
)); int i;
for(i=1;i<=4;i++){
printf("1から%dまでの二乗和は%d\n",i
,rec
(n
=i
)); }
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+Ci8v5YaN5biw44KS55So44GE44GmMeOBi+OCiW7jgb7jgafjga7kuozkuZflkowxXjIgKyAyXjIgKyAzXjIgKyAuLi4gKyBuXjLjgpLoqIjnrpfjgZnjgosKaW50IHJlYyhpbnQgbil7CiAgICBpZiAobiA9PSAxKXsKCQkgcmV0dXJuIG4qbjsKICAgIH0KICAgIGVsc2V7CgkJcmV0dXJuIG4qbityZWMobi0xKTsKICAgIH0KfQppbnQgbWFpbih2b2lkKSB7CiAgICBpbnQgbiA9IDQ7CiAgICBwcmludGYoIjHjgYvjgoklZOOBvuOBp+OBruS6jOS5l+WSjOOBruWApOOBryVkXG4iLCBuLCByZWMobikpOwogICAgaW50IGk7CiAgICBmb3IoaT0xO2k8PTQ7aSsrKXsKICAgIAlwcmludGYoIjHjgYvjgoklZOOBvuOBp+OBruS6jOS5l+WSjOOBryVkXG4iLGkscmVjKG49aSkpOwogICAgfQoJcmV0dXJuIDA7Cn0KCg==