Do the trig functions in math.h work in degrees, radians or what? For

some reason it doesn't say which in "man math.h"

IIRC the arctan of a slope gives the angle. So, shouldn't atanf((float)1)

return 45 or .7something (degrees or radians) instead of some negative

number?

--

Mark Healey

marknews(at)healeyonline(dot)com

Mark Healey < XXXX@XXXXX.COM > writes:

If on a Unix/Linux system - man 3 sin

--

Chris.

If on a Unix/Linux system - man 3 sin

--

Chris.

On Sun, 21 May 2006 03:43:36 GMT, Mark Healey < XXXX@XXXXX.COM > wrote

in comp.lang.c:

Doesn't your C reference book tell you? All C trigonometric functions

work in radians. If you want to work in degrees, you need to provide

functions or macros to do the conversions back and forth.

--

Jack Klein

Home: http://www.yqcomputer.com/

FAQs for

comp.lang.c http://www.yqcomputer.com/

comp.lang.c++ http://www.yqcomputer.com/ ++-faq-lite/

alt.comp.lang.learn.c-c++

http://www.yqcomputer.com/ ~ajo/docs/FAQ-acllc.html

in comp.lang.c:

Doesn't your C reference book tell you? All C trigonometric functions

work in radians. If you want to work in degrees, you need to provide

functions or macros to do the conversions back and forth.

--

Jack Klein

Home: http://www.yqcomputer.com/

FAQs for

comp.lang.c http://www.yqcomputer.com/

comp.lang.c++ http://www.yqcomputer.com/ ++-faq-lite/

alt.comp.lang.learn.c-c++

http://www.yqcomputer.com/ ~ajo/docs/FAQ-acllc.html

Mark Healey < XXXX@XXXXX.COM > writes:

Some negative number?

This program:

#include <stdio.h>

#include <math.h>

int main(void)

{

printf("atanf((float)1.0) = %f\n", atanf((float)1.0));

return 0;

}

gives me:

atanf((float)1.0) = 0.785398

Did you remember the "#include <math.h>"? Did you make sure to link

in the math library (on a Unix-like system, you might need a "-lm"

option).

--

Keith Thompson (The_Other_Keith) XXXX@XXXXX.COM < http://www.yqcomputer.com/ ~kst>

San Diego Supercomputer Center <*> < http://www.yqcomputer.com/ ~kst>

We must do something. This is something. Therefore, we must do this.

Some negative number?

This program:

#include <stdio.h>

#include <math.h>

int main(void)

{

printf("atanf((float)1.0) = %f\n", atanf((float)1.0));

return 0;

}

gives me:

atanf((float)1.0) = 0.785398

Did you remember the "#include <math.h>"? Did you make sure to link

in the math library (on a Unix-like system, you might need a "-lm"

option).

--

Keith Thompson (The_Other_Keith) XXXX@XXXXX.COM < http://www.yqcomputer.com/ ~kst>

San Diego Supercomputer Center <*> < http://www.yqcomputer.com/ ~kst>

We must do something. This is something. Therefore, we must do this.

And would atanf be in there, in particular one that accepts a float as

opposed to double? joe

"Joe Smith" < XXXX@XXXXX.COM > writes:

Possibly not, since atanf was added in C99 -- but if atanf weren't in

the library, that wouldn't explain the OP's result of "some negative

number".

--

Keith Thompson (The_Other_Keith) XXXX@XXXXX.COM < http://www.yqcomputer.com/ ~kst>

San Diego Supercomputer Center <*> < http://www.yqcomputer.com/ ~kst>

We must do something. This is something. Therefore, we must do this.

Possibly not, since atanf was added in C99 -- but if atanf weren't in

the library, that wouldn't explain the OP's result of "some negative

number".

--

Keith Thompson (The_Other_Keith) XXXX@XXXXX.COM < http://www.yqcomputer.com/ ~kst>

San Diego Supercomputer Center <*> < http://www.yqcomputer.com/ ~kst>

We must do something. This is something. Therefore, we must do this.

I'm surprised that my implementation, circa ten years old, has it. joe

#ifdef _M_MRX000

/* MIPS fast prototypes for float */

/* ANSI C, 4.5 Mathematics */

/* 4.5.2 Trigonometric functions */

_CRTIMP float __cdecl acosf( float );

_CRTIMP float __cdecl asinf( float );

_CRTIMP float __cdecl atanf( float );

_CRTIMP float __cdecl atan2f( float , float );

_CRTIMP float __cdecl cosf( float );

_CRTIMP float __cdecl sinf( float );

_CRTIMP float __cdecl tanf( float );

The math functions for float data type were reserved and made optional

in C89, and mandatory in C99. This seems to have produced some

confusion as to whether restricting a compiler to C89 mode, (gcc

default), may suppress the float functions, or break them, as in some

MSVC versions. Clearly, the provision for them in C89 was produced by

strong demand and intention of certain vendors to provide them.

1. Math.random() and Math.round(Math.random()) and Math.floor(Math.random()*2)

2. Math.random() and Math.round(Math.random()) and Math.floor(Math.random()*2)

3. Math problems (No not high school math!)

4. [PHP] Math problems (No not high school math!)

5. [PHP] Math problems (No not high school math!)

6. Is there a way to have math that is not "display math" look like display math?

7. FA: 1-Day-Left: 6 Math Books - 4 Math CDROMs - Algebra, Discrete Math, Calculus, more...

8. Is there a way to have math that is not "display math" look like display math?

9. Is there a way to have math that is not "display math" look like ?display math?

10. higher, 12 byte precision math trig functions with gcc 3.3.3

11. xy plane for high school math

14. math/algebra/trig/scientific fonts & symbols, need more - where to

15. where to download Perl Module Math::Trig::acos()

8 post • Page:**1** of **1**