How could I sums up 1/n for n=1 to 10000?

4 views (last 30 days)
Wenchen Liu
Wenchen Liu on 23 Sep 2022
Commented: Walter Roberson on 23 Sep 2022
I have a code like this, but I can't run it.
n = 10000; % whatever you want
sum_harm = 0;
for i = 1:n
sum_harm = sum_harm + 1/i;
end
sum_harm
sum_harm = 9.7876

Answers (2)

Chunru
Chunru on 23 Sep 2022
It can be run as shown below. What problem have you encountered?
n = 10000; % whatever you want
sum_harm = 0;
for i = 1:n
sum_harm = sum_harm + 1/i;
end
sum_harm
sum_harm = 9.7876
  3 Comments
Walter Roberson
Walter Roberson on 23 Sep 2022
n = 1:10000;
result = cumsum(1./n);
result(end)
ans = 9.7876
plot(n, result)

Sign in to comment.


Image Analyst
Image Analyst on 23 Sep 2022
Why not try it vectorized:
n = 1 : 10000; % whatever you want
sum_harm = sum(1 ./ n)
sum_harm = 9.7876
What problem did you have in running your code? It ran in MATLAB online. Did you type the m-file name into the command window or click the green run triangle on the tool ribbon? Either should work, but what did you do, if anything? Why do you say you can't run it? Why do you not know how to run the code? Try this link if you don't know how to run your MATLAB program:

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by