Recursive Factorial Function Evaluation
    10 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
I'm trying to make a recursive function to test factorials that will check for a variable that is a non-negative single argument (it will display an error using the error function if not). How should I go about doing this?
0 comentarios
Respuestas (1)
  Varsha Lohani
 el 23 de Oct. de 2021
        
      Editada: Varsha Lohani
 el 23 de Oct. de 2021
  
      clc
clear all
%% Factorial of the number
n = 8;
out = facto(n);
%% Factorial function
% Create a function for factorial 
function f = facto(num)
%  FACTO Summary of this function goes here
%   factorial of the n
%   It is a recursive function call
%   if n does not reaches 0. This mean n is either negatve number or
%   decimal number. The problem of out of memory occurs. The likely cause
%   is an infinite recursion with the program. The problem never converges.
    if ~isscalar(num) || num ~= fix(num) || num < 0
        error('non-negative integer scalar input expected')
    end
    if num == 0
        f = 1;
    else
        f = num*facto(num-1);
    end
end
0 comentarios
Ver también
Categorías
				Más información sobre Characters and Strings en Help Center y File Exchange.
			
	Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!