More actions
imported>rino0601@naver.com No edit summary |
imported>rino0601@naver.com No edit summary |
||
| Line 1: | Line 1: | ||
#include <stdio.h> | |||
//전역 변수 선언. | //전역 변수 선언. | ||
int multi; | int multi; | ||
//전역 변수 초기화 | //전역 변수 초기화 | ||
multi =1; | multi =1; | ||
int fact(int a); | int fact(int a); | ||
int main() | int main() | ||
{ | { | ||
int input; | |||
scanf("%d",&input); | |||
printf("%d",fact(input)); | |||
return 0; | |||
} | } | ||
int fact(int num) | int fact(int num) | ||
{ | { | ||
if(num==1) | |||
{ | |||
return multi; | |||
} | |||
else | |||
{ | |||
multi *= num; | |||
} | |||
fact(num-1); | |||
} | } | ||
// 전역 변수가 필요하므로. 이코드는 사실상 거의 쓸모 없을 것 같다. | // 전역 변수가 필요하므로. 이코드는 사실상 거의 쓸모 없을 것 같다. | ||
처음에 짠것. 마지막 주석에 달아놨듯이.. 쓸모 없어 보임; | 처음에 짠것. 마지막 주석에 달아놨듯이.. 쓸모 없어 보임; | ||
#include <stdio.h> | |||
#include | |||
int fact(int num); | |||
int fact(int num); | |||
int main() | |||
int main() | { | ||
{ | int input; | ||
scanf("%d",&input); | |||
printf("%d",fact(input)); | |||
} | |||
} | |||
int fact(int num) | |||
int fact(int num) | { | ||
{ | if(num==1) | ||
{ | |||
return num; | |||
} | |||
else | |||
{ | |||
return fact(num-1)*num; | |||
} | |||
} | |||
} | |||
전역 변수 쓰지 않고 팩토리얼 선언하기. 근데 이거 사실 친구한테 물어본거 ... 아 내가 한 것 같지 않음 ㅜㅠ | 전역 변수 쓰지 않고 팩토리얼 선언하기. 근데 이거 사실 친구한테 물어본거 ... 아 내가 한 것 같지 않음 ㅜㅠ | ||
#include <stdio.h> | |||
#include | |||
int fact(int num1) | |||
int fact(int num1) | { | ||
{ | int num2 = 1; | ||
int multi = 1; | |||
while(num2 <= num1) | |||
{ | |||
multi *= num2; | |||
num2++; | |||
} | |||
return multi; | |||
} | |||
} | |||
int main() | |||
int main() | { | ||
{ | int input; | ||
scanf("%d",&input); | |||
printf("%d",fact(input)); | |||
} | |||
} | |||
재귀함수를 쓰지 않고 팩토리알 쓰기. 저기서 변수를 더 줄일 수 있을것 같은데 하기 힘들다. | 재귀함수를 쓰지 않고 팩토리알 쓰기. 저기서 변수를 더 줄일 수 있을것 같은데 하기 힘들다. | ||
재귀 쓰는 것 보다 더 오래걸렸음. -_-... | 재귀 쓰는 것 보다 더 오래걸렸음. -_-... | ||
Revision as of 06:41, 14 April 2011
#include <stdio.h>
//전역 변수 선언.
int multi;
//전역 변수 초기화
multi =1;
int fact(int a);
int main()
{
int input;
scanf("%d",&input);
printf("%d",fact(input));
return 0;
}
int fact(int num)
{
if(num==1)
{
return multi;
}
else
{
multi *= num;
}
fact(num-1);
}
// 전역 변수가 필요하므로. 이코드는 사실상 거의 쓸모 없을 것 같다.
처음에 짠것. 마지막 주석에 달아놨듯이.. 쓸모 없어 보임;
#include <stdio.h>
int fact(int num);
int main()
{
int input;
scanf("%d",&input);
printf("%d",fact(input));
}
int fact(int num)
{
if(num==1)
{
return num;
}
else
{
return fact(num-1)*num;
}
}
전역 변수 쓰지 않고 팩토리얼 선언하기. 근데 이거 사실 친구한테 물어본거 ... 아 내가 한 것 같지 않음 ㅜㅠ
#include <stdio.h>
int fact(int num1)
{
int num2 = 1;
int multi = 1;
while(num2 <= num1)
{
multi *= num2;
num2++;
}
return multi;
}
int main()
{
int input;
scanf("%d",&input);
printf("%d",fact(input));
}
재귀함수를 쓰지 않고 팩토리알 쓰기. 저기서 변수를 더 줄일 수 있을것 같은데 하기 힘들다. 재귀 쓰는 것 보다 더 오래걸렸음. -_-...