#include <stdio.h>
// 1からnまでの奇数の和を求める再帰関数
int sumodd(int n) {
if (n <= 0) return 0; // ベースケース
if (n % 2 != 0) {
// nが奇数の場合、nを足して次はn-2を調べる
return n + sumodd(n - 2);
} else {
// nが偶数の場合、nは足さずにn-1を調べる
return sumodd(n - 1);
}
}
int main() {
int n;
printf("1から%dまでの奇数の和は %d です\n", n
, sumodd
(n
)); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgovLyAx44GL44KJbuOBvuOBp+OBruWlh+aVsOOBruWSjOOCkuaxguOCgeOCi+WGjeW4sOmWouaVsAppbnQgc3Vtb2RkKGludCBuKSB7CiAgICBpZiAobiA8PSAwKSByZXR1cm4gMDsgLy8g44OZ44O844K544Kx44O844K5CgogICAgaWYgKG4gJSAyICE9IDApIHsKICAgICAgICAvLyBu44GM5aWH5pWw44Gu5aC05ZCI44CBbuOCkui2s+OBl+OBpuasoeOBr24tMuOCkuiqv+OBueOCiwogICAgICAgIHJldHVybiBuICsgc3Vtb2RkKG4gLSAyKTsKICAgIH0gZWxzZSB7CiAgICAgICAgLy8gbuOBjOWBtuaVsOOBruWgtOWQiOOAgW7jga/otrPjgZXjgZrjgatuLTHjgpLoqr/jgbnjgosKICAgICAgICByZXR1cm4gc3Vtb2RkKG4gLSAxKTsKICAgIH0KfQoKaW50IG1haW4oKSB7CiAgICBpbnQgbjsKICAgIHByaW50Zigi5q2j44Gu5pW05pWwbuOCkuWFpeWKm+OBl+OBpuOBj+OBoOOBleOBhDogIik7CiAgICBzY2FuZigiJWQiLCAmbik7CgogICAgcHJpbnRmKCIx44GL44KJJWTjgb7jgafjga7lpYfmlbDjga7lkozjga8gJWQg44Gn44GZXG4iLCBuLCBzdW1vZGQobikpOwogICAgcmV0dXJuIDA7Cn0=