Decimal places for value stored

2 views (last 30 days)
Hello, im wondering if there any way i could perform calculation using values up to 4 decimal places only.
For example,i write this in command windows:
x=4.21;
h=0.001;
f=@(x) x^3 + 8*x^2 + 23*x +3;
f2_prime = (f(x+h)-2*f(x)+f(x-h))/(h^2);
how can i make the value of f(x), f(x+h) and f(x-h) to be only up to 4 decimal places when calculating for f2_prime?

Accepted Answer

Ameer Hamza
Ameer Hamza on 1 Dec 2020
You can use round()
x=4.21;
h=0.001;
f=@(x) x^3 + 8*x^2 + 23*x +3;
f2_prime = (round(f(x+h),4)-2*f(x)+round(f(x-h),4))/(h^2);
  4 Comments
fikri osman
fikri osman on 1 Dec 2020
f2_prime = (round(f(x+h),4)-(2*round(f(x),4)+round(f(x-h),4)/(h^2);
i use this and got error
fikri osman
fikri osman on 1 Dec 2020
f2_prime = (round(f(x+h),4)-2*round(f(x),4)+round(f(x-h),4))/(h^2);
i used this and got the answer i wanted, thank you sir

Sign in to comment.

More Answers (1)

Walter Roberson
Walter Roberson on 1 Dec 2020
how can i make the value of f(x), f(x+h) and f(x-h) to be only up to 4 decimal places when calculating for f2_prime?
You would need to use fixed-point arithemetic, such as from the Fixed Point Toolbox.
A close second would be to use the Symbolic Toolbox with digits(4), but it turns out that the Symbolic Toolbox uses "guard digits" ... I think I read once that it uses 5 guard digits -- and the minimum permitted is digits(2)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!