using the while loop function

I am new to MATLAB and trying to use a while function and not understanding why there is no error, but keeps the system busy with no result.
function fac=fact(n);
fac=1;
while n>0
fac=fac*n;
n-1;
end

 采纳的回答

You're close!
Inside the loop you say:
n-1
This just does the computation but does not assign this value back to n. You want:
n = n-1;
Which will reduce the value of n.

1 个评论

Thank you, it was racking my brain why it looked why it would work but didn't.

请先登录,再进行评论。

更多回答(1 个)

Akshay Kanoria
Akshay Kanoria 2013-10-7

1 个投票

Hi, Inside the loop you should use n = n-1, it should solve your problem.

类别

在 帮助中心 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by