MATLAB code find factorial of n num

464 ビュー (過去 30 日間)
Murathan Cuya
Murathan Cuya 2020 年 6 月 18 日
コメント済み: Walter Roberson 2023 年 10 月 18 日
can you please Write a MATLAB code to Find factorial of a given number N?
  3 件のコメント
Murathan Cuya
Murathan Cuya 2020 年 6 月 18 日
ı need n as a input. ı searvched and saw some explains but ı didnt like them. ı really am new about this. ı dont want factorial(n). ı want a independed place from the function to put inputs.
Ahmet Zahit Akpinar
Ahmet Zahit Akpinar 2022 年 3 月 10 日
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

サインインしてコメントする。

採用された回答

Nipun Agarwal
Nipun Agarwal 2020 年 6 月 18 日
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 件のコメント
Walter Roberson
Walter Roberson 2021 年 6 月 13 日
Factorial starts with n* not (n-1)* . The code has it right.

サインインしてコメントする。

その他の回答 (4 件)

ANSHU PRIYA
ANSHU PRIYA 2021 年 6 月 12 日
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 件のコメント
ANSHU PRIYA
ANSHU PRIYA 2021 年 6 月 13 日
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
Walter Roberson 2021 年 6 月 13 日
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?

サインインしてコメントする。


Darya
Darya 2022 年 11 月 15 日
編集済み: Walter Roberson 2022 年 11 月 15 日
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 件のコメント
Walter Roberson
Walter Roberson 2022 年 11 月 15 日
f=f*1;
No, it should be
f=f*i;

サインインしてコメントする。


AMOL
AMOL 2023 年 10 月 18 日
n=7; factvalue=1; for i=1:7 factvalue=factvalue*i end
  1 件のコメント
Walter Roberson
Walter Roberson 2023 年 10 月 18 日
if n were altered this would give the wrong result.

サインインしてコメントする。


Hugo
Hugo 2023 年 10 月 18 日
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 件のコメント
Walter Roberson
Walter Roberson 2023 年 10 月 18 日
"fin" is not used in MATLAB

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeProgramming についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by