strange format of result(division operation)

2 views (last 30 days)
Hi everyone
I've written this code:
syms x
>> f=-5e-6*((x).^2)+3.21e2*(x);
>> eq=diff(f)==0;
>> allocate=solve(eq)
and the answer should be a number. but what I get after running the code is :
allocate =
189484955125144514199552/5902958103587057
that is not what I expect!
Matlab doesn't do the division operation and I wnat have the final result that is a number. what should i do?
I really appreciate your help.

Accepted Answer

Chunru
Chunru on 25 Mar 2022
Symbolic computation tries its best not to loose accuracy. You can convert it to a number at the end
syms x
f=-5e-6*((x).^2)+3.21e2*(x);
eq=diff(f)==0;
allocate=solve(eq)
allocate = 
final_sol = double(allocate)
final_sol = 3.2100e+07

More Answers (0)

Community Treasure Hunt

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

Start Hunting!