For loop within a function?

73 次查看(过去 30 天)
How can I put a for loop inside of a function? I'm trying to get the factorial of an input. Any given input.
Like if I pull up the function an put any number inside, to have its factorial be the output.

采纳的回答

Star Strider
Star Strider 2016-3-26
A function is like any other script file, except it is saved as a function.
For example, to get the sum of the elements of a vector, this is one option using a for loop inside a function:
function p = vector_sum(x)
p = 0;
for k1 = 1:length(x)
p = p + x(k1);
end
end
Then call it as:
z = 1:10;
sum_from_1_to_10 = vector_sum(z)
You can adapt this idea to calculate the factorial for your assignment.
See the documentation for Function Basics for details.

更多回答(1 个)

Stalin Samuel
Stalin Samuel 2016-3-26
I don't understand why do you going for for loop instead of using the inbuilt factorial function
n = 3;%input value
f = factorial(n)
  2 个评论
Juan Marquez
Juan Marquez 2016-3-26
It's part of hw assignment
Stalin Samuel
Stalin Samuel 2016-3-26
function f = fact(n)
f = 1;
for itr = 2:n
f = f*itr;
end
end
save the above code as separate file in your working directory and from main file use the below code to call the function
n = 3;%input value
f = fact(n)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Environment and Settings 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by