Write M file with while loop, which computes factorial of any x, (x=12).

24 次查看(过去 30 天)
Directions:
Define x=12, Start with some value of factorial say Fact=1; - while loop condition will be x > 1 - compute factorial by multiplying the number with Fact - Reduce number by 1 - Close the while loop - Display the Fact
This is what I have so far (it is incorrect):
x=12;
while x>1
fact = x*(x-1);
x=x-1
end
disp(fact);

采纳的回答

Ameer Hamza
Ameer Hamza 2020-10-21
编辑:Ameer Hamza 2020-10-21
You need to update the value of factorial at each step by using its value from the previous step
x=12;
fact = 1;
while x>1
fact = fact*x;
x=x-1;
end
disp(fact);

更多回答(1 个)

Chenguang Yan
Chenguang Yan 2020-10-21
f = 12;
x = f;
fact = x;
while x>1
x = x-1;
fact = fact*x;
end
disp(fact)
%
assert(isequal(fact,factorial(f)))

类别

Help CenterFile 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