Rev 8171 | Rev 11126 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 8171 | Rev 8862 | ||
---|---|---|---|
Line 154... | Line 154... | ||
154 | 154 | ||
155 | /* gcd and lcm, not really checking errors. */ |
155 | /* gcd and lcm, not really checking errors. */ |
156 | double gcd(double n1, double n2) |
156 | double gcd(double n1, double n2) |
157 | { |
157 | { |
158 | unsigned long long int l1, l2, ll; |
158 | unsigned long long int l1, l2, ll; |
159 | n1= |
159 | n1=fabs(n1); n2=fabs(n2); |
160 | if(!isfinite(n1) || !isfinite(n2) || n1<0 || n2<0 || |
160 | if(!isfinite(n1) || !isfinite(n2) || n1<0 || n2<0 || |
161 | n1>1E18 || n2>1E18) return NAN; |
161 | n1>1E18 || n2>1E18) return NAN; |
162 | l1=n1; l2=n2; |
162 | l1=n1; l2=n2; |
163 | if(l1<l2) { |
163 | if(l1<l2) { |
164 | ll=l1;l1=l2;l2=ll; |
164 | ll=l1;l1=l2;l2=ll; |