Info
This question is closed. Reopen it to edit or answer.
Why this code is error???
1 view (last 30 days)
Show older comments
clc,clear all,close all;
x = [0 1 2 3];
y = [0 1 2 3];
f3 = 6./(factorial(x).*factorial(3-x));
f4 = 24./(factorial(y).*factorial(4-y));
f5 = 120./(factorial(3+(-x)+(-y)).*factorial(2+x+y));
mpd = (f3.*f4.*f5)./220;
stem3(x,y,mpd);
xlabel('x'); ylabel('y'); zlabel('mpd');
2 Comments
RB Blackstone
on 16 Feb 2018
This part of the equation produced negative integers.
>> 3+-x+-y
Ans = 3 1 -1 -3
Factorial() requires non-negative integers.
Answers (1)
C.J. Harris
on 15 Feb 2018
Because given your definitions of x and y, the expression 3+(-x)+(-y) results in [3 1 -1 -3], and you cannot calculate the factorial of a negative number.
2 Comments
Jan
on 16 Feb 2018
@Jukkrid Boonlkom: How could the readers know, what you want to do. All we see is the failing code, which cannot work for mathematical reasons. This does not allow to suggest a modification, because you did not tell yet, what you want to calculate.
This question is closed.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!