Built in recursive function in matlab, MATLAB in Mathematics

Assignment Help:

Built in recursive function in MATLAB:

We have seen that the built-in function in MATLAB to compute factorials, termed as the factorial and we know how to implement the iterative definition by using a running product. Now we will rather than write a recursive function known as the fact. The function will receive an integer n, which for ease will suppose is a positive integer, and will compute n! just by using the recursive definition given:

 

1287_Built in recursive function in matlab.png

The function computes one value, by using an if-else statement to select between the base and general cases. When the value passed to the function is 1, the function returns 1 as1! become equal to 1. Or else, the common case applies. According to definition, the factorial of n, that is what this function is computing, is defined as n multiplied by the factorial of (n-1). Therefore, the function assigns   n * fact(n-1) to the output argument.

How does this work? Precisely the way the illustration was sketched for 3!. Let's trace what would take place if the integer 3 is passed to the function:

fact(3) tries to assign 3 * fact(2)

fact(2) tries to assign 2 * fact(1)

fact(1) assigns 1

fact(2) assigns 2

fact(3) assigns 6

Whenever the function is initially called, 3 is not equivalent to 1, therefore the statement

facn = n * fact(n-1);

is executed. This will try to assign the value of 3 * fact(2) to  facn, but this expression cannot be computed yet and hence value cannot be assigned yet as first the value of fact(2) should be found. Therefore, the assignment statement has been interrupted by a recursive call to the fact function. The call to the function fact (2) answers in a try to assign 2 * fact(1), but again this expression cannot so far be computed. Later, the call to the function fact(1) answers in a complete execution of an assignment statement as it just assigns 1. The base case has been reached once, and then the assignment statements which were interrupted can be computed, in the reverse order.


Related Discussions:- Built in recursive function in matlab

Pie chart - plot functions, Pie chart - plot functions: The MATLAB als...

Pie chart - plot functions: The MATLAB also has a function pie which will generate a pie chart. Calling the function with the form pie (vec) draws a pie chart, by using the pe

Matrix of plots - plot functions, Matrix of Plots: The other function ...

Matrix of Plots: The other function which is very useful with any type of plot is subplot that creates a matrix of plots in the present Figure Window. The three arguments are

Histogram - plot functions, Histogram: The histogram is a particular t...

Histogram: The histogram is a particular type of bar chart which shows the frequency of occurrence of the values within a vector. The Histograms use what are known as bins to

Strings as vectors, Strings as Vectors: The Strings are considered as ...

Strings as Vectors: The Strings are considered as vectors of characters-or in another words, a vector in which each and every element is a single character-so numerous vector

Example of logical built-in functions, Example of Logical built-in function...

Example of Logical built-in functions: For equivalent to all the function, we should make sure that the entire elements in the vector are logically true. The one way of doing

Cholesky factorisation of packed storage matrix, If I have a vector represe...

If I have a vector representing the packed storage form of a symmetric matrix, how do I perform a cholesky factorisation on that?

Standard deviation, Standard Deviation The standard deviation is the sq...

Standard Deviation The standard deviation is the square root of variance: The built-in function in a MATLAB for the standard deviation is known as std; the standard dev

Error-checking for integers, Error-Checking for Integers: As MATLAB us...

Error-Checking for Integers: As MATLAB uses the type double by default for all the values, to check to make confirm that the user has entered an integer, the program have to c

Built-in functions for complex numbers, Built-in functions for Complex numb...

Built-in functions for Complex numbers:   We know that in MATLAB both i and j are built-in functions which return √-1 (therefore, they can be thought of as built-in constants).

Writing and reading spreadsheet files, Writing and Reading Spreadsheet File...

Writing and Reading Spreadsheet Files: The MATLAB functions xlswrite & xlsread will write to and read from the spreadsheet files which have the extension .xls. For illustratio

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd