로그인 유지
지금 00a47만들었는데 채점에서 14가 들어가면 int 범위를 초과해서
다른 값이 나오네요...
이거 어떻게 해야하나요?
int대신 long long으로 하시면됩니다.
long long사용시 입/출력할때 %d가 아닌 %lld 를 사용하시면되요. ㅎ
#include <stdio.h>int fact(long long n){ if(n==0) return 1; if(n==1) return 1; else return fact(n-1)*n;}int main(){ freopen("input.txt","r",stdin); freopen("output.txt","w",stdout); int n; scanf("%d",&n); printf("%lld",fact(n)); return 0;} 바꿔서 해봣는데 여기서 잘못된점이 뭔지 알려주세요
아무리 longlong으로 선언해도 리턴값이 int로 리턴되면 효과가없지요?!
int fact() 이부분을 long long fact()로 바꿔보시는게 어떨가요?ㅎㅎ
아 감사합니다 ㅎ
int대신 long long으로 하시면됩니다.
long long사용시 입/출력할때 %d가 아닌 %lld 를 사용하시면되요. ㅎ