Write a program to calculate 1^1 + 2^2 + 3^3 + ... + 10^10. Without using ^.

24 Ansichten (letzte 30 Tage)
Seth Herft
Seth Herft am 24 Mär. 2019
Beantwortet: Anant Upadhyay am 27 Mär. 2019
I am having trouble solving this. This is my code with the "^" symbol although can not figure out how to solve this problem without.
x = 0;
for i = 1:10
x = x + i^i;
end
disp(x);
Thank you.
  8 Kommentare
Guillaume
Guillaume am 24 Mär. 2019
Bearbeitet: Guillaume am 24 Mär. 2019
"My professor wants us to use a nesting loop, one for adding 1 to 10 and one loop for calculation exponentiation."
So, why don't you go ahead and do it? What is difficult about that?
On the other hand, you could complain to the professor thar asking you to use loops for things that shouldn't be done with loops is teaching you the wrong way to use matlab. (Something we spend a lot of time unteaching people on Answers, unfortunately).</rant over>
dpb
dpb am 24 Mär. 2019
Bearbeitet: dpb am 25 Mär. 2019
I gotcha' John... :)
Mayhaps too plebian an approach, indeed, but figured to push towards what figured was probably the expected solution.
OK, Seth, that's what I suspected was the desired solution--so how would you write a loop to have a variable number of iterations? If you get that step, then there's just one coding bookkeeping step you have to think of to get the exponentiated term to add to the previous sum...
HINT: What algebraic expression equals M**N on paper without using the power for the expression?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Anant Upadhyay
Anant Upadhyay am 27 Mär. 2019
Hi Seth,
According to my understanding, the problem is to compute the sum of 1^1 + 2^2 + 3^3 +….+ 10^10 and you do not want to use “^” symbol for calculating the above sum.
Basically, any natural number ‘N’ raised to a power ‘K’ can be computed by performing the product of the natural number ‘N’ ‘K’ times. Therefore, to compute ‘N^K’, a “for-loop” can be used.
Now, to calculate the required sum, you will need an outer loop that will run from starting term (1 in this case) to ending term (10 in this case) of the sequence and for each term, calculate the required value by multiplying the term with itself ‘K’ times, where ‘K’ is the value of exponent.

Kategorien

Mehr zu Programming finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by