Qualcuno di voi sarebbe così gentile da aiutarmi a svolgere questo esercizio?
Di seguito `e riportata una schermata del Command Window del Matlab. >> (2+2^(-52))-2 ans = 0 >> (2+2^(-51))-2 ans = 4.4409e-016 Si giustifichino i risultati ottenuti, utilizzando le definizioni e le propriet`a dell’insieme dei numeri di macchina e dell’aritmetica di macchina.
Qual `e, invece, il risultato della seguente operazione? (2-2^(-52))-2.
..siamo solo noi...generazione di sconvolti ke nn han + santi nè eroi...siamo solo noiiiiiiiiiiiiiiiiiii....
--> 2+2^-52==2 TRUE io giustifico così, tra due numeri di macchina compresi tra beta^p e beta^p+1 abbiamo una distanza di beta^p-t. quindi io prendo 2^1 e vedo il successivo che dista beta^p-t. il prossimo sarà 2^1-52=2^-51 quindi il successivo di 2^1 è 2^1+2^-51 mi calcolo il punto medio tra 2 e 2+2^-51 e viene proprio 2+2^-52. siccome il punto cade nel mezzo devo approssimare. uso l'arrotondamento e vedo che 2 è 2^1 x1.00 l'ultima cifra della mantissa è 0 approssimo al precedente dei due quindi arr(2+2^-52)=2 quindi è vero
poi l'altro --> 2-2^-52==2 FALSE quindi sto in 2^1 e voglio il precedente per capire come fl(2-2^-52) si comporta. la distanza con il precedente 2^p-t=2^0-52=2^-52 quindi 2-2^-52 è proprio il precedente numero di macchina e quindi è falso dire che è 2
insomma non so perchè digiti quell robaccia in matlab perchè l'esercizio propone dei confronti con un numero di macchina, 2^1x1.00 tieni conto che di default in matlab si lavora in doppia precisione quindi F(2,52,-1023,1024). bho spero di non aver detto cavolate e di aver chiarito qualche dubbio a qualcuno. in bocca al lupo per domani.