summaryrefslogtreecommitdiffstats
path: root/Python/hypot.c
blob: 293aeb819c7ef59d79610161f1fa57ea2fc7dd9a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
/* hypot() replacement */

#include "config.h"
#include "myproto.h"
#include "mymath.h"

double hypot(x, y)
	double x;
	double y;
{
	double yx;

	x = fabs(x);
	y = fabs(y);
	if (x < y) {
		double temp = x;
		x = y;
		y = temp;
	}
	if (x == 0.)
		return 0.;
	else {
		yx = y/x;
		return x*sqrt(1.+yx*yx);
	}
}