projects
/
unix-history
/ blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
tags
|
clone url
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
blame
|
history
|
raw
|
HEAD
BSD 3 development
[unix-history]
/
usr
/
src
/
lib
/
libm
/
hypot.c
/*
* sqrt(a^2 + b^2)
* (but carefully)
*/
double
sqrt
();
double
hypot
(
a
,
b
)
double
a
,
b
;
{
double
t
;
if
(
a
<
0
)
a
= -
a
;
if
(
b
<
0
)
b
= -
b
;
if
(
a
>
b
) {
t
=
a
;
a
=
b
;
b
=
t
;
}
if
(
b
==
0
)
return
(
0
.);
a
/=
b
;
/*
* pathological overflow possible
* in the next line.
*/
return
(
b
*
sqrt
(
1
. +
a
*
a
));
}
struct complex
{
double
r
;
double
i
;
};
double
cabs
(
arg
)
struct complex
arg
;
{
double
hypot
();
return
(
hypot
(
arg
.
r
,
arg
.
i
));
}