ABOUT ME

Today
Yesterday
Total
  • [자료구조]팩토리얼 계산 프로그램(순환ver, 반복ver)
    @떤떤/#Data Structure(자료구조) 2019. 12. 15. 23:53

    <순환적인 팩토리얼 계산 프로그램>

    #include <stdio.h>
    
    int factorial(int n){
    	if(n<=1) return 1;
    	else return (n*factorial(n-1));
    }
    
    int main(void){
    	int n=0, sum=0;
    	printf("input : ");
    	scanf("%d",&n);
    	sum=factorial(n);
    	printf("output : %d", sum);
    }
    
    

    <반복적인 팩토리얼 계산 프로그램>

    #include <stdio.h>
    
    int factorial_iter(int n){
    	int k, v=1;
    	for(k=n;k>0;k--){
    		v=v*k;
    	}
    	return v;
    }
    
    int main(void){
    	int n=0, sum=0;
    	printf("input : ");
    	scanf("%d",&n);
    	sum=factorial_iter(n);
    	printf("output : %d", sum);
    }
    
    

     

    순환적인 프로그램은 가독성이 증대되고 코딩도 더 간단

    하지만 함수 호출을 하게 되므로 반복에 비해 수행속도가 떨어짐

    '@떤떤 > #Data Structure(자료구조)' 카테고리의 다른 글

    댓글

Designed by Tistory.