Non-functioning function

8 views (last 30 days)
Jacob Smith
Jacob Smith on 27 Feb 2021
Edited: Jacob Smith on 27 Feb 2021
function output = calculateFactorial(N)
output = N*(N-1);
if (length(N) = N < 1 || N > 1)
output = 'Error; N must be a single number and not an array';
elseif N < 0
output = 'Error; N must be greater than Zero';
elseif rem(N,1) ~= 0
output = 'Error; Intger must be whole number';
elseif N == 0
output = 1;
end
struggling with these functions. If i ommit line 2, theres then a mistake on line 3 where there is an incoorrect use of '='. I need help wrapping my head around my mistakes.

Accepted Answer

madhan ravi
madhan ravi on 27 Feb 2021
if length(N) > 1
  3 Comments
madhan ravi
madhan ravi on 27 Feb 2021
Edited: madhan ravi on 27 Feb 2021
output = calculateFactorial(1.1)
output = 'Error; Intger must be whole number'
output = calculateFactorial(-1 : 3)
output = 'Error; N must be a single number and not an array'
output = calculateFactorial(-1)
output = 'Error; N must be greater than Zero'
output = calculateFactorial(3)
output = 6
function output = calculateFactorial(N)
output = N .* (N-1);
if length(N) > 1
output = 'Error; N must be a single number and not an array';
elseif N < 0
output = 'Error; N must be greater than Zero';
elseif rem(N,1) ~= 0
output = 'Error; Intger must be whole number';
elseif N == 0
output = 1;
end
end
Jacob Smith
Jacob Smith on 27 Feb 2021
Edited: Jacob Smith on 27 Feb 2021
Ok, I got it figuerd out now, the error is from not having an N value plugged in. *inserts face into palm* Thanks for the help! It feels good to know that i wasnt too far off.

Sign in to comment.

More Answers (0)

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!