| 123456789101112131415161718192021222324252627282930313233343536373839404142 | 
							- #include "f2c.h"
 
- #ifdef __cplusplus
 
- extern "C" {
 
- #endif
 
- #ifdef KR_headers
 
- double pow_ri(ap, bp) real *ap; integer *bp;
 
- #else
 
- double pow_ri(real *ap, integer *bp)
 
- #endif
 
- {
 
- double pow, x;
 
- integer n;
 
- unsigned long u;
 
- pow = 1;
 
- x = *ap;
 
- n = *bp;
 
- if(n != 0)
 
- 	{
 
- 	if(n < 0)
 
- 		{
 
- 		n = -n;
 
- 		x = 1/x;
 
- 		}
 
- 	for(u = n; ; )
 
- 		{
 
- 		if(u & 01)
 
- 			pow *= x;
 
- 		if(u >>= 1)
 
- 			x *= x;
 
- 		else
 
- 			break;
 
- 		}
 
- 	}
 
- return(pow);
 
- }
 
- #ifdef __cplusplus
 
- }
 
- #endif
 
 
  |