fork download
  1. #include <stdio.h>
  2.  
  3. // 課題3の数列を計算する再帰関数
  4. int rec(int n) {
  5. // ベースケース (初期値)
  6. if (n == 0) return 3;
  7. if (n == 1) return 0;
  8. if (n == 2) return 2;
  9.  
  10. // 漸化式
  11. return rec(n - 2) + rec(n - 3);
  12. }
  13.  
  14. int main(void) {
  15. // 第0項から第50項まで列挙
  16. for (int i = 0; i <= 50; i++) {
  17. printf("a%d: %d\n", i, rec(i));
  18. }
  19.  
  20. return 0;
  21. }
  22.  
  23.  
Success #stdin #stdout 0.03s 5292KB
stdin
Standard input is empty
stdout
a0: 3
a1: 0
a2: 2
a3: 3
a4: 2
a5: 5
a6: 5
a7: 7
a8: 10
a9: 12
a10: 17
a11: 22
a12: 29
a13: 39
a14: 51
a15: 68
a16: 90
a17: 119
a18: 158
a19: 209
a20: 277
a21: 367
a22: 486
a23: 644
a24: 853
a25: 1130
a26: 1497
a27: 1983
a28: 2627
a29: 3480
a30: 4610
a31: 6107
a32: 8090
a33: 10717
a34: 14197
a35: 18807
a36: 24914
a37: 33004
a38: 43721
a39: 57918
a40: 76725
a41: 101639
a42: 134643
a43: 178364
a44: 236282
a45: 313007
a46: 414646
a47: 549289
a48: 727653
a49: 963935
a50: 1276942