sqrt(2) 100 places and more
12 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
How to disply sqrt(2) to 100 decimal places in MATLAB or more than 100 decimal places???How to limit my precision
Risposta accettata
Più risposte (3)
Sean de Wolski
il 15 Dic 2011
If you have the symbolic math toolbox, you can try this:
syms x
vpa(subs(sqrt(x),2),100)
More per comments:
%copying first two lines from nasa file
nasa = '1.414213562373095048801688724209698078569671875376948073176679737990732478462107038850387534327641572735013846230912297024924836055850737212644121497099935831';
syms x;
mlvpa = vpa(subs(sqrt(x),2),length(nasa)-1); %subtract 1 to account for decimal
isequal(char(mlvpa),nasa)
ans = 1
woo!
17 Commenti
Sean de Wolski
il 15 Dic 2011
After installing R2009b, I'm able to replicate the behavior you're seeing on it. My syntax above works on R2011b.
Laura Proctor
il 15 Dic 2011
format long
will show 15 digits.
fprintf(1,'%.100f\n',sqrt(2))
will show 100 digits. However, that precision is not stored in sqrt(2) - you can see that most of the digits are zero.
By default, numbers are stored as double in MATLAB. In order to understand what that means, I'm linking the following page:
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!