La funzione frexp(double num, int*exp) ti restituisce la mantissa come 0,nnnn e l’esponente come intero
Es.
Il programma seguente restituisce mantissa = 0.625 e exp = 4;
int E; (esponente)
double F; (mantissa)
F = frexp(10.0, &E) ;
infatti si ha 0,625 * 2^4 = 0.625*16 = 10.0
-----------------------------------------------------
La funzione Idexp(double num, int exp) restituisce il valore num*2^exp. Se si verifica un overflow la funzione restituisce HUGE_VAL
Es. Il codice che segue visualizza il numero 8
Include “math.h”
Include “stdio.h”
void main(void)
printf(“%f”, idexp(2,2)
infatti si ha 2 * 2^2 = 8
--------------------------------------------------
La funzione modf(double num, int*i) scompone num nelle parti intera e frazionaria, restituisce la parte frazionaria e assegna la parte intera alla variabile a cui punta.
Es.
Il codice seguente visualizza 10 e 0.123
Int I;
double F;
F = modf(10.123, &I)
Sarà F=0.123;
I=10;
-----------------------------------------------
Spero di essere stato chiaro
Ciao
PIC e floating point
Moderatore: Paolino
12 messaggi
• Pagina 2 di 2 • 1, 2
12 messaggi
• Pagina 2 di 2 • 1, 2
Torna a Realizzazioni, interfacciamento e nozioni generali.
Chi c’è in linea
Visitano il forum: Nessuno e 8 ospiti