summaryrefslogtreecommitdiff
path: root/lib/libm/cexprf.c
blob: 41d98b1f709db617cb22c393c0a0141e9ad4b062 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <complex.h> // for cexpf, cimagf, complex, crealf, I
#include <math.h>    // for cosf, expf, sinf

float complex cexpf(float complex z)
{
	float r, x, y;

	x = crealf(z);
	y = cimagf(z);
	r = expf(x);

	return r * cosf(y) + r * sinf(y) * I;
}