#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int reSum(int n) {
if (n < 1) {
return 0;
}
return (n + reSum(n-1) );
}
int main(void) {
int a;
int num = 0, sum = 0;
printf("정수 입력 : ");
scanf("%d", &num);
for (a = 1; a <= num; a++) {
sum += a;
}
printf("for 순환문 1부터 %d까지의 합 : %d \\n", num, sum);
printf("재귀함수 1부터 %d까지의 합 : %d \\n", num, reSum(num));
}
<aside> ➡️ 정수 입력 : 10 for 순환문 1부터 10까지의 합 : 55 재귀함수 1부터 10까지의 합 : 55
</aside>
#define CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int reSum(int n) {
if (n < 1) {
return 0;
}
return (n + reSum(n-1) );
}
int reFac(int n) {
if (n < 1) {
return 1;
}
return (n * reFac(n - 1));
}
int main(void) {
int a;
int num = 0, fac = 1;
printf("정수 입력 : ");
scanf("%d", &num);
for (a = 1; a <= num; a++) {
fac *= a;
}
printf("for 순환문 1부터 %d까지의 곱 : %d \\n", num, fac);
printf("재귀함수 1부터 %d까지의 곱 : %d \\n", num, reFac(num));
}
<aside> ➡️ 정수 입력 : 5 for 순환문 1부터 5까지의 곱 : 120 재귀함수 1부터 5까지의 곱 : 120
</aside>
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int reFib(int n) {
if (n == 0) {
return 0;
}
else if (n == 1) {
return 1;
}
return (reFib(n-1) + reFib(n-2));
}
int main(void) {
int a, b, c;
int num = 0, sum = 0, fac = 1;
printf("정수 입력 : ");
scanf("%d", &num);
a = 1; b = 1;
sum = 2;
while (sum < num) {
c = a + b;
sum++;
a = b; b = c;
}
printf("피보나치 %d까지의 수는 : %d \\n", num, c);
printf("재귀함수 피보나치 %d까지의 수 : %d", num, reFib(num));
return 0;
}
<aside> ➡️ 정수 입력 : 10 피보나치 10까지의 수는 : 55 재귀함수 피보나치 10까지의 수 : 55
</aside>