PDA

View Full Version : [c++]Problema con il sin


Dark_Maro
27-12-2008, 18:00
Salve,

ho da poco anzi da pochissimo iniziato ad imparare ad utilizzare il linguaggio c++ (per scopi personali,niente di commerciale) e mi sono inbattuto in un problema, mentre stavo compilando il programma lo eseguivo ogni tanto per vedere se tutto funzionava, ma confronando i risultati con la calcolatrice mi sono accorto di un errore ma che non riesco a risolvere e a capire il perchè:

la funzione è questa: v*sin(w-tc) che scritta in c++: cout << v*sin(float (w-tc));

fatta cosi sembra tutto ok ma andando a cambiare le variabili con numeri mi vengono valori differenti:
dando v=12 w=120 tc=145 in teoria dovrebbe venire -5.07 (con la calcolatrice) ma viene 1.588 (con c++)

vi ringrazio in anticipo per qualsiasi aiuto!!

PaVi90
27-12-2008, 18:10
Premesso che sono niubbissimo in C... non è che hai il risultato in radianti anzichè gradi?! :stordita:

stdecden
27-12-2008, 18:12
Premesso che sono niubbissimo in C... non è che hai il risultato in radianti anzichè gradi?! :stordita:

Confermo!! infatti da cplusplus.com

Returns the sine of an angle of x radians.

Dark_Maro
27-12-2008, 18:15
Confermo!! infatti da cplusplus.com

ok grazie mille!!

sapete come posso convertirlo in gradi sempre all'interno del programma??

PaVi90
27-12-2008, 18:17
Vedi se può tornarti utile questo: http://www.dotnetarchitects.it/tips.aspx?IDTip=61

Chiaramente usa la "forumula inversa" :)

goldorak
27-12-2008, 18:18
ok grazie mille!!

sapete come posso convertirlo in gradi sempre all'interno del programma??

Se x e' l'angolo in radianti, (360/2pi_greco)*x ti da l'angolo in gradi.

Dark_Maro
27-12-2008, 18:25
Se x e' l'angolo in radianti, (360/2pi_greco)*x ti da l'angolo in gradi.

ok grazie adesso provo a sistemarla!!

ma sapete se esiste un simbolo o una parola da usare in c++ da poterlo convertire da solo!!

cionci
28-12-2008, 09:21
ma sapete se esiste un simbolo o una parola da usare in c++ da poterlo convertire da solo!!
Non esiste, basta farsi una piccola funzione di utilità.

Dark_Maro
28-12-2008, 10:43
ok grazie!!!

scusate ma adesso avrei anche un altro problema sempre con il sin:

come faccio a fare sin^-1

grazie ancora per il vostro aiuto!!:)

PaVi90
28-12-2008, 15:55
ok grazie!!!

scusate ma adesso avrei anche un altro problema sempre con il sin:

come faccio a fare sin^-1

grazie ancora per il vostro aiuto!!:)
beh, (senx)^(-1) = 1 / senx

..::DAVE::..
28-12-2008, 16:06
beh, (senx)^(-1) = 1 / senx

eh magari fosse così
arcoseno (http://www.cplusplus.com/reference/clibrary/cmath/asin.html) :read:

cionci
28-12-2008, 16:11
eh magari fosse così
arcoseno (http://www.cplusplus.com/reference/clibrary/cmath/asin.html) :read:
No, In matematica senx ^ -1 è così. Arcoseno è un'altra cosa, è l'operazione inversa di seno.

goldorak
28-12-2008, 16:11
ok grazie!!!

scusate ma adesso avrei anche un altro problema sempre con il sin:

come faccio a fare sin^-1

grazie ancora per il vostro aiuto!!:)


Dipende, se vuoi sin (x) ^-1 = 1/ sin(x).
Se invece vuoi la funzione inversa del seno, che malauguratamente si scrive sin^-1 (x) allora devi invocare la funzione arcsin.

..::DAVE::..
28-12-2008, 16:12
No, In matematica senx ^ -1 è così. Arcoseno è un'altra cosa, è l'operazione inversa di seno.

Dipende, se vuoi sin (x) ^-1 = 1/ sin(x).
Se invece vuoi la funzione inversa del seno, che malauguratamente si scrive sin^-1 (x) allora devi invocare la funzione arcsin.

ok grazie!!!

scusate ma adesso avrei anche un altro problema sempre con il sin:

come faccio a fare sin^-1

grazie ancora per il vostro aiuto!!:)

per me intende arcoseno :) anche perchè 1/sen è intuitivo da fare :)

PaVi90
28-12-2008, 16:25
No, In matematica senx ^ -1 è così. Arcoseno è un'altra cosa, è l'operazione inversa di seno.
Ecco appunto. L'arcoseno è la funzione inversa, che le calcolatrici erroneamente indicano con sin^-1 :read:

goldorak
28-12-2008, 16:51
Ecco appunto. L'arcoseno è la funzione inversa, che le calcolatrici erroneamente indicano con sin^-1 :read:

In verita' la scritta sin^-1 e' corretta.
Se uno scrive sin^-1 (x) si intende arcsin (x) e cioe' la funzione inversa del senso.
Se uno scrive sin (x) ^-1 = (sin(x))^-1 allora e' uguale a 1/sin(x).
Notare bene dove si trova l'argomento x rispetto alla funzione.

PaVi90
28-12-2008, 17:34
In verita' la scritta sin^-1 e' corretta.
Se uno scrive sin^-1 (x) si intende arcsin (x) e cioe' la funzione inversa del senso.
Se uno scrive sin (x) ^-1 = (sin(x))^-1 allora e' uguale a 1/sin(x).
Notare bene dove si trova l'argomento x rispetto alla funzione.
Che io sappia, alle funzioni goniometriche + quella logaritmica, l'esponente della potenza va posto sempre tra il nome della funzione e il suo argomento.

Dark_Maro
28-12-2008, 17:45
ragazzi scusate per la mia mancanza di chiarezza, volevo la funzione inversa del sin quindi sin^-1(x) che giustamente come avete detto voi è asin!!

grazie per il vostro aiuto!!