How can I increase the decimal digits in the result of my program ? for example 50 or 80 digits .

8 vues (au cours des 30 derniers jours)
format long
x=(pi);
for i=1:10
fx=cos(x(i))-3*x(i)+1;
fxx=-sin(x(i))-3;
x(i+1)=x(i)-(fx/fxx);
end
x(10)
% THE RESULT IS = 0.607101648103123

Réponses (1)

Star Strider
Star Strider le 27 Jan 2017
If you have the Symbolic Math Toolbox, you can use it. Another option is John D’Errico’s HPF - a big decimal class in the File Exchange.
  2 commentaires
khalid boureeny
khalid boureeny le 27 Jan 2017
Modifié(e) : per isakson le 27 Jan 2017
Hi, Star Strider ...thanks a lot for your help ...
I do have Symbolic math toolbox , but the problem is I'm beginner and I don't know how ... can you modify this program for me ...
format long
x=(pi);
for i=1:10
fx=cos(x(i))-3*x(i)+1;
fxx=-sin(x(i))-3;
x(i+1)=x(i)-(fx/fxx);
end
x(10)
% THE RESULT IS = 0.607101648103123
THANKS again , I really need that help ... khalid_boureeny@yahoo.com
Star Strider
Star Strider le 27 Jan 2017
My pleasure.
Declare ‘x’ as as symbolic object, and the result will be symbolic with the precision defined by the digits function:
digits(50);
x= sym(pi);
for i=1:10
fx=cos(x(i))-3*x(i)+1;
fxx=-sin(x(i))-3;
x(i+1)=x(i)-(fx/fxx);
end
x_10 = vpa(x(end))
x_10 =
0.60710164810312263122482837345049072888916774532395

Connectez-vous pour commenter.

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by