Problem 953. Pi Estimate 1
Solution Stats
Problem Comments
-
15 Comments
please update the link to the document, cant find it anymore
The link is broken, but you can solve this problem with the Leibniz formula for π.
The principle is described here: https://en.wikipedia.org/wiki/Leibniz_formula_for_%CF%80
@Jordan Wilkerson change the number format and round to significant digits shown in test code
@Paul Derwin
Oh right, duh. I should've thought of that haha. That worked! I deleted my last comment since it basically was a solution after all. Thanks for your help!
Leibniz formula, precision 1e-6.
please update the link.
The description has been updated per the link provided in a prior comment.
function [estimate] = pi_est1(nMax)
estimate=0;
for i=1:(nMax-1)
m=2*i+1;
if mod(i,2)~=0
estimate=(1/m)+estimate;
else
estimate=-(1/m)+estimate;
end
end
estimate=(1-estimate)*4;
estimate=round(estimate,6);
end
I believe the task statement should be modified by specifying that the estimate should be rounded. Otherwise, the test suite can be edited accordingly.
The problem description has been updated to specify that rounding is required.
What an idiotic checking algorithm. I spent 10 minutes just trying to get the software to think I had solved the problem when I had already gotten it right multiple times earlier. Make sure you officially round, and not just print it with digits (which is smarter because the variable retains all of its significant digits), otherwise you'll find your time wasted like mine was.
And, all for 10 points. How stupid. Make a better checking algorithm or at least give us more points for having to put up with this BS
good
good
I'll have to say that the checking algorithm is very poorly written. Using isequal instead of an absolute difference with a permitted tolerance check is straight out flawed for me. And after repeating the calculations with both Python and MATLAB. I get an estimate of 3.2323.. for a series of 10 elements (nMax = 10). I wonder how the problem setters arrived at an estimate of 3.04... something. I can't remember the exact value that was used for that test.
Solution Comments
Show commentsProblem Recent Solvers918
Suggested Problems
-
Find all elements less than 0 or greater than 10 and replace them with NaN
15529 Solvers
-
Extract leading non-zero digit
2134 Solvers
-
Switch matrix to a column vector
349 Solvers
-
Calculate the Number of Sign Changes in a Row Vector (No Element Is Zero)
718 Solvers
-
292 Solvers
More from this Author4
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!