pow_zi.c

来自「unix v7是最后一个广泛发布的研究型UNIX版本」· C语言 代码 · 共 46 行

C
46
字号
#include "complex"pow_zi(p, a, b) 	/* p = a**b  */dcomplex *p, *a;long int *b;{long int n;double t;dcomplex x;n = *b;p->dreal = 1;p->dimag = 0;if(n == 0)	return;if(n < 0)	{	n = -n;	z_div(&x, a);	}else	{	x.dreal = a->dreal;	x.dimag = a->dimag;	}for( ; ; )	{	if(n & 01)		{		t = p->dreal * x.dreal - p->dimag * x.dimag;		p->dimag = p->dreal * x.dimag + p->dimag * x.dreal;		p->dreal = t;		}	if(n >>= 1)		{		t = x.dreal * x.dreal - x.dimag * x.dimag;		x.dimag = 2 * x.dreal * x.dimag;		x.dreal = t;		}	else		break;	}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?