Info
This question is locked. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.
MATLAB code find factorial of n num
292 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Murathan Cuya
am 18 Jun. 2020
Locked: DGM
am 21 Sep. 2024
can you please Write a MATLAB code to Find factorial of a given number N?
3 Kommentare
Akzeptierte Antwort
Nipun Agarwal
am 18 Jun. 2020
Hey,
The factorial of a number is calculated as
F(n) = (n-1)*(n-2)*(n-3)…….1 and F(0) = 1 always;
So we start from the right most side like F(p) where p = 1 initially and keep incrementing the value of p till n; The resultant value is your answer. I have written the function with variable n. replace n with any integer to get its factorial number;
Attaching the code for your reference.
function fact = factorial(n)
fact = 1; %base case, for F(0);
for i = 1:n %looping through values from 1 : n to multiply each value;
fact = fact*i; %multiplying with our previous values.
end
end
The fact will have your desired factorial of the integer you called function with.
1 Kommentar
Weitere Antworten (4)
ANSHU PRIYA
am 12 Jun. 2021
okh so we are intresting in to finding the value of 7 factorial
programming:-
%calculation of factorial
n=7;
factvalue=1;
for i=1:7
factvalue=factvalue*i
end
3 Kommentare
ANSHU PRIYA
am 13 Jun. 2021
its obvious !because the notation of factorial are denoted by n!
here we are finding the value of n! where n=7.
thats why we assinginf here n=7
Walter Roberson
am 13 Jun. 2021
So if I coded
%calculation of factorial
n=7;
factvalue=1;
for i=1:9
factvalue=factvalue*i
end
then afterwards factvalue would hold n! = 7! ? Or would it hold 9! ? Where is the connection between the value of n and the value calculated?
Ahmet Zahit Akpinar
am 10 Mär. 2022
Verschoben: DGM
am 21 Sep. 2024
I made it for 10! but you can change 10 by any value
n=1; i=1;
while i<=10
n=n*i;
i=i+1;
fprintf('n=%d\n')
end
1 Kommentar
DGM
am 21 Sep. 2024
Bearbeitet: DGM
am 21 Sep. 2024
What is the point of printing a bunch of instances of "n=" repeatedly to console? Why is anything printed in the loop? Why use a while loop instead of a for loop?
What's wrong with
n = 10; % isolate the parameter
result = 1;
for k = 1:n
result = result*k;
end
result
... or just
result = prod(1:n)
... or, you know
result = factorial(n)
Darya
am 15 Nov. 2022
Bearbeitet: Walter Roberson
am 15 Nov. 2022
n=input('n=')
if n>=0&&n==fix(n)
f=1;
for i=2:n
f=f*1;
end
else
disp('ererr')
end
f
1 Kommentar
Hugo
am 18 Okt. 2023
hecho de función = factorial(n)
hecho = 1; % caso base, para F(0);
for i = 1:n %recorriendo valores de 1:n para multiplicar cada valor;
hecho = hecho*i; %multiplicando con nuestros valores anteriores.
fin
fin hecho = 1; % caso base, para F(0); for i = 1:n %recorriendo valores de 1:n para multiplicar cada valor; hecho = hecho*i; %multiplicando con nuestros valores anteriores. finfin
1 Kommentar
This question is locked.
Siehe auch
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!