copyright 2010, David File

#include <climits>
#include <math.h>

/* Chuck Norris can divide by zero -- inline */
/* for a computer infinity is the largest, type value */
/* converts to real for calc, use (type)cndiv(a,b) in code */
inline real cndiv(a,b){
     if(a<0.0){sgn=-1.0};
     if(b==0.0){return(sgn*(pow(2,sizeof(a)*CHAR_BIT)));
     }
  else {
     return(a/b);
     }
}

inline real cndivn(a,b,n){
     if(a<0.0){sgn=-1.0};
     if(b==0.0){return(sgn*n);
     }
  else {
     return(a/b);
     }
}

#include <stdio.h>
#include "cndiv.h"

int main(){
int a=2;
int z=0;
double b=2.0;
double c=-2.0;
double zz=0.0;
double rtn=cnDiv(c,zz);
printf("2 / zero = %d\n",(int)cnDiv(a,z));
printf("%f / zero = %f\n",b,cnDiv(b,zz));
printf("%f / zero = %f\n",c,rtn);
printf("%f / zero = %f\n",c,cnDivn(a,b,100));
return(0);
}