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

24 visualizzazioni (ultimi 30 giorni)
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);

Risposta accettata

Ameer Hamza
Ameer Hamza il 21 Ott 2020
Modificato: Ameer Hamza il 21 Ott 2020
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);

Più risposte (1)

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

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by