Jak na funkci arc sinus v shellu ?
Petr Simek
petrsi na jcu.cz
Neděle Srpen 15 18:34:55 CEST 1999
On 15 Aug 1999, David Sauer wrote:
> LD> arc tan tam je, ostatni se asi musi (opet :-) spocitat. Zacnete
> LD> treba tim, ze tan x = sin x / cos x Treba z toho neco vydedukujete.
>
> Zkuste nekterou knihu o matematice, urcite to bude v ucebnicich pro VS.
> Nebo, pokud nevyhovuje 'bc', zkuste treba genius
> (http://www.5z.com/jirka/genius.html [myslim]).
No ja jsem to chtel do shellu z duvodu ze jsem potreboval vypocitat stupne
nebo casove zpozdeni pro sinusovku kdyz chci mit jednotlive useky siroke
1% vykonu z cele pulvlny. Kvuli spinani triaku a regulaci vykonu sirkou
pulsu. Takze jsem chtel v shellu generovat radu cisel a vybirat ta vhodna,
tedy graficka kalkulacka mi byla k nicemu. Nakonec jsme to udelal v C.
Kazdopadne jsem narazil na zajimavou vec prave s funkci asin (acos).
Mam promennou float kterou v cyklu zvysuju o 0.02 . A kdyz je v te
promenne 1.000000 tak asin na tom chcipne - vypise +NAN . Kdyz si tu
promennou vytisknu - pres printf("%f") tak vypise 1.000000 . Kdyz
zadam asin(1.000000) tak to funguje - vrati to Pi. Neni to divne ??
Zda se ze kdyz dam do promenne float nulu a pak k ni padesatkrat pripoctu
0.02 tak nedostanu jedna ale trochu vic ?!@ Ani cyklus na to nefunguje -
kdyz zapisu :
float i;
for(i = 0.0; i <= 1.0; i += 0.02){ printf("%f\n", i) }
tak to i 1.000000 uz nevypise. Kdyz to zmenim na :
for(i = 0.0; i <= 1.001; i += 0.02){ printf("%f\n", i) }
tak to posledni hodnotu i vypise jako 1.000000 ale asin na tom chcipne .
> * David Sauer, student of Czech Technical University
*------------------------------------------------------------------------*
| Petr Simek APS JU |
| petrsi na jcu.cz |
*------------------------------------------------------------------------*
Další informace o konferenci Linux