Write a Matlab program by using a while loop that finds the smallest positive number 2^m such that 1+x>1 in the machine.
2 views (last 30 days)
Show older comments
m must be a negative integer. Technically from the way that my professor phrased it, shouldn't m be -infinity?
2 Comments
OCDER
on 13 Aug 2018
Theoretical math and computer math are slightly different. You might find that 1+2^m > 1 will fail. https://www.cs.drexel.edu/~introcs/Fa15/extras/Rounding/index.html
James Tursa
on 14 Aug 2018
Edited: James Tursa
on 14 Aug 2018
"... shouldn't m be -infinity?"
2^(-infinity) = 0, and 1+0 is not greater than 1. So, no, the way the professor phrased it, -infinity is not the answer.
Do as the professor instructed and write some code with a while loop to figure out the answer.
Answers (1)
Vishal Chaudhary
on 17 Aug 2018
Edited: Vishal Chaudhary
on 17 Aug 2018
Precision differs in MATLAB and theoretical calculation. So when you write while loop you will know the difference.
1 Comment
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!