Getting a shorter, more simple answer as output

조회 수: 1 (최근 30일)
rezheen
rezheen 2025년 4월 17일
편집: Walter Roberson 2025년 4월 30일
How can I get a shorter answer, ideally an exact answer but decimal is also fine. This is my code:
syms x y
y=(log(x)/log(4))+(log(x^2)/log(4)); dy=diff(y)
Returns the answer as:
13510798882111488/(6243314768165359*x)
I'd like a simpler answer please such as:
3/(x*log(4)) % Exact answer
or;
2.1640/x % Decimal approximation
Thanks.

채택된 답변

Walter Roberson
Walter Roberson 2025년 4월 18일
syms x y
log4 = log(sym(4));
y=(log(x)/log4)+(log(x^2)/log4); dy=diff(y)
dy = 
  댓글 수: 2
rezheen
rezheen 2025년 4월 30일
Hi Walter. When I run your code in Matlab (I have R2021a version), I get:
dy=2.1640/x
Which is great, but doesn't get what you get as output but that's probably because I have the older MATLAB version. Thanks for the answer.
Walter Roberson
Walter Roberson 2025년 4월 30일
편집: Walter Roberson 2025년 4월 30일
You probably have
sympref('FloatingPointOutput', true)
ans = logical
0
in effect. You want it to be false .

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

rezheen
rezheen 2025년 4월 17일
이동: Matt J 2025년 4월 17일
I figured it out with this code:
sympref('FloatingPointOutput',true);
syms x y
y=(log(x)/log(4))+(log(x^2)/log(4)); dy=diff(y)
Output:
dy =
2.1640/x
Thanks in advance.

태그

제품


릴리스

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by