I keep getting SIGFPE error when i try to run my program. Why so? asked 22 Mar '13, 16:29

This is the easiest runtime error to debug  it is a floating point error. It is virtually always caused by a division by 0, so check any divisions or modulo operations in your code carefully. answered 22 Mar '13, 16:29

include<stdio.h>long int fact(int); int main() { int t,n; scanf("%d",&t); while(t) { scanf("%d",&n); long int r,sum=0,mod=1000000007; for(r=0;r<=(long int)(n/2.0);r++) sum+=((fact(n)/(fact(r)fact(nr)))%3); sum=2; if(n%2==0) sum=((fact(n)/(fact(n/2)*fact(n/2)))%3); printf("%ld\n",(sum%mod)); } return 0; } long int fact( int n) { if(n==0n==1) return 1; long int pro=1; while(n!=1) pro*=n; return pro; } i am getting the same SIGFPE error but cannot debug the program,can anyone please locate the bug answered 28 Dec '14, 14:02

Your code fails for input: answered 26 Feb '15, 23:42

SIGFPE may occur due to
SIFFPE is very easy to debug. answered 23 May '15, 14:11

Why am i getting runtime here?? include <stdio.h>include <stdlib.h>long long int a,b,c=0; int calc(); int mod(); int main() {
} int mod(){
} int calc() { // printf("a"); if(mod()==0) { while(a!=b) { a*=2; c++;
answered 03 Sep '15, 20:53

It is a signal representing core dumped means if you do any invalid operation the you will get "SIGFPE" error. In case floating point error means division by 0 cause this error so please check your code and make sure that you are not operating this type of operation means make sure that you are not dividing by 0 answered 03 Sep '15, 21:29

include<stdio.h>include<math.h>int gcd(int n1, int n2) { int min,i, hcf;
} int fd(int a, int b) { int count, i, j, total; count=total=0; for(i=a; i<=b; i++) { count=0; for(j=1; j<i; j++) if(gcd(i,j)==1) count++;
} int main() { long long a,j, b,i=0,n, yes; scanf("%lld", &n); while(n) { scanf("%lld%lld", &a,&b);
} why i m getting sigfpe error in this program..can any1 help?? answered 20 Sep '15, 23:28

include<stdio.h>main() { long int a,b,c,d,e,j,I,n; scanf("%ld",&a); for(I=0;I<a;i++) {="" scanf("%ld%ld",&b,&c);="" e="b*c;" for(j="e;j">1;j) { n=j*j; if(e%n==0) { d=e/n; printf("%ld",d); break; } } } }I am getting sigfpe.Where is the problem in my code .Can any one to it??? answered 17 Mar '16, 19:17

Apart from other answers one more thing which causes this error is modulo operation by 1 answered 07 Mar '17, 23:02

using namespace std;
int main()
{
long long int n;
cin>>n;
long long int a[n+1],mul[n+1]={1};
mul[0]=1;
for(long long int i=1;i<=n;i++)
{
cin>>a[i];
mul[i]=1;
}
for(long long int i=1;i<=n;i++)
{
mul[i]=mul[i1]*a[i]; long long int t; cin>>t; while(t) { long long int re=1,li,ri,mi; cin>>li>>ri>>mi; re=(mul[ri])/(mul[li1]); if(re>=mi) { re=re%mi; } cout<<re<<endl; } return 0; } iam getting run time error what is the problem answered 14 Mar '17, 18:23

Why am I getting RUNTIME(SIGFPE) error? can anyone help?? Link to my code: https://www.codechef.com/viewsolution/13277608 Thanks in advance! answered 13 Apr '17, 01:58

Note: In C++ if you fail to typecast the variables properly , you may end up facing a SIGFPE . I faced one as I was storing an int value in a vector of long long int ! answered 10 May '17, 19:54

use if conditions t ocheck whether anything results in 0 or not answered 24 Jun '17, 20:16

why am i getting RUNTIME SIGFPE error? link to my code: https://www.codechef.com/viewsolution/18629624 answered 22 May '18, 18:24
