How to show exact answers in MATLAB

414 次查看(过去 30 天)
Suh-Shin
Suh-Shin 2013-9-24
编辑: Mr.Gh 2019-12-14
Hello everyone, I run into this exact answer problem with MATLAB pretty frequently. My problem is right now when I'm trying to do an inverse of a matrix containing square roots, it gives me answers in fractions or in decimals. I want it to show the square roots and other functions. How would I go about doing this? I've googled a while and all they say are precision values and rounding and what not, but nothing to do with these square roots.
  2 个评论
Mr.Gh
Mr.Gh 2019-12-14
编辑:Mr.Gh 2019-12-14
Use this code to see the exact answer:
>>A = inv([sqrt(sym(21))]);
>>answer = double(A)
answer = 2.1822e-01

请先登录,再进行评论。

回答(3 个)

Mahdi
Mahdi 2013-9-24
Why don't you try an approach where you use square the matrix to find out what the numbers are?
For example
MatrixSquared=Matrix.^2;
Then you would be able to see which numbers were square rooted. I would also suggest placing
format rat
before the code.
  1 个评论
Suh-Shin
Suh-Shin 2013-9-24
Hey, I tried your approach, but it only gives me fractions. I want MATLAB to show me square roots and powers. I tried the following:
format rat;
inv([sqrt(21)]);
it shows me fractions, but I want to see square roots

请先登录,再进行评论。


Matt J
Matt J 2013-9-24
编辑:Matt J 2013-9-24
Sounds like you're trying to do a symbolic matrix inverse operation. The Symbolic Math Toolbox will let you do that, see
  6 个评论
Karan Gill
Karan Gill 2018-2-13
To add onto Walter's reply, this topic explains differences in arithmetic.

请先登录,再进行评论。


Shashank Prasanna
Shashank Prasanna 2013-9-24
Use format to reset your display format or choose a different display format:
>> format

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by