팩토리얼을 계속 반복해서 출력하고 오버플로우면 멈추는 걸 하고 있는데 잘안됩니다 도와주세요 ㅠㅠ
아란
2023.04.01
질문 제목 :팩토리얼을 계속 반복해서 출력하고 오버플로우면 멈추는 걸 하고 있는데 잘안됩니다 도와주세요 ㅠㅠ질문 내용 :
#include stdio.h
int main()
{ long fact=1;
int i,n;
n=1;
while(fact0){
fact=1; for(i=1;i=n;i++) fact=fact*i;
printf(%d!은 %d\n,n,fact); n++;
} return 0;
}
를 하는데계속 오류가 뜹니다 어떻게 해야 하나요 ㅠㅠ
-
동이
오버플로우된시점에 i를 출력해보세요.
-
자랑
감사합니다 그리고 13!는 오버플로우입니다도 출력하려면 어떻게 해야 하나요?
-
희미한눈물
while(fact0) - while(fact = 4294967295 / n)
fact 초기값이 1인데 fact 0이 성립할리가 없겠죠.