Voglio calcolare y(n)=32677Sin(45/1024•n)
, dove y
è un numero intero e n
varia da 0 a 2048. Come posso rendere questo processo più rapido e più preciso?
Ora voglio mostrarti una risposta di riferimento:
Poiché Sin(a+b)=Sin(a)Cos(b)+Cos(a)Sin(b)
E Cos(a+b)=Cos(a)Cos(b)-Sin(a)Cos(b)
.
Quindi posso memorizzare solo Sin(45/1024•1)
e Cos(45/1024•1)
. Quindi usa questa formula:
Sin(45/1024•2)=Sin(45/1024•1+45/1024•1)
,
%codice%,
%codice%,
%codice% ,
In questo modo, forse più veloce senza memorizzare un grande array.