#include <stdio.h>
// 再帰的に定義された手続き proc
void proc(int n) {
// n=0 ならば戻る
if (n == 0) {
return 0;
}
// そうでなければ
else {
printf("%d", n
); // 【行き】nを印字する proc(n - 1); // proc(n-1)を呼び出す
// 【帰り】nを印字する
}
}
int main() {
// proc(5)を実行
proc(5);
printf("\n"); // 最後に見やすく改行を入れる return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgovLyDlho3luLDnmoTjgavlrprnvqnjgZXjgozjgZ/miYvntprjgY0gcHJvYwp2b2lkIHByb2MoaW50IG4pIHsKICAgIC8vIG49MCDjgarjgonjgbDmiLvjgosKICAgIGlmIChuID09IDApIHsKICAgICAgICByZXR1cm4gMDsgCiAgICB9CiAgICAKICAgIC8vIOOBneOBhuOBp+OBquOBkeOCjOOBsAogICAgZWxzZSB7CiAgICAgICAgcHJpbnRmKCIlZCIsIG4pOyAgIC8vIOOAkOihjOOBjeOAkW7jgpLljbDlrZfjgZnjgosKICAgICAgICBwcm9jKG4gLSAxKTsgICAgICAgLy8gcHJvYyhuLTEp44KS5ZG844Gz5Ye644GZCiAgICAgICAgICAgLy8g44CQ5biw44KK44CRbuOCkuWNsOWtl+OBmeOCiwogICAgfQp9CgppbnQgbWFpbigpIHsKICAgIC8vIHByb2MoNSnjgpLlrp/ooYwKICAgIHByb2MoNSk7CiAgICAKICAgIHByaW50ZigiXG4iKTsgLy8g5pyA5b6M44Gr6KaL44KE44GZ44GP5pS56KGM44KS5YWl44KM44KLCiAgICByZXR1cm4gMDsKfQo=