Mercurial > gnulib
annotate tests/test-atan2f.c @ 40196:e63f5d3edab5
relocatable-prog: Update documentation.
* doc/relocatable-maint.texi (Supporting Relocation): Update to match
the recent changes.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sun, 24 Feb 2019 01:49:15 +0100 |
parents | b06060465f09 |
children |
rev | line source |
---|---|
15891 | 1 /* Test of atan2f() function. |
40057
b06060465f09
maint: Run 'make update-copyright'
Paul Eggert <eggert@cs.ucla.edu>
parents:
19484
diff
changeset
|
2 Copyright (C) 2010-2019 Free Software Foundation, Inc. |
15891 | 3 |
4 This program is free software: you can redistribute it and/or modify | |
5 it under the terms of the GNU General Public License as published by | |
6 the Free Software Foundation; either version 3 of the License, or | |
7 (at your option) any later version. | |
8 | |
9 This program is distributed in the hope that it will be useful, | |
10 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 GNU General Public License for more details. | |
13 | |
14 You should have received a copy of the GNU General Public License | |
19190 | 15 along with this program. If not, see <https://www.gnu.org/licenses/>. */ |
15891 | 16 |
17 /* Written by Bruno Haible <bruno@clisp.org>, 2010-2011. */ | |
18 | |
19 #include <config.h> | |
20 | |
21 #include <math.h> | |
22 | |
23 #include "signature.h" | |
24 SIGNATURE_CHECK (atan2f, float, (float, float)); | |
25 | |
26 #include "macros.h" | |
27 | |
28 volatile float x; | |
29 volatile float y; | |
30 float z; | |
31 | |
32 int | |
33 main () | |
34 { | |
35 /* A particular value in the first quadrant. */ | |
36 x = 0.6f; | |
37 y = 0.8f; | |
38 z = atan2f (y, x); | |
39 ASSERT (z >= 0.92729515f && z <= 0.9272953f); | |
40 | |
41 /* A particular value in the second quadrant. */ | |
42 x = -0.6f; | |
43 y = 0.8f; | |
44 z = atan2f (y, x); | |
45 ASSERT (z >= 2.2142974f && z <= 2.2142975f); | |
46 | |
47 /* A particular value in the third quadrant. */ | |
48 x = -0.6f; | |
49 y = -0.8f; | |
50 z = atan2f (y, x); | |
51 ASSERT (z >= -2.2142975f && z <= -2.2142974f); | |
52 | |
53 /* A particular value in the fourth quadrant. */ | |
54 x = 0.6f; | |
55 y = -0.8f; | |
56 z = atan2f (y, x); | |
57 ASSERT (z >= -0.9272953f && z <= -0.92729515f); | |
58 | |
59 return 0; | |
60 } |