Why this code is error???
Infos
Cette question est clôturée. Rouvrir pour modifier ou répondre.
Afficher commentaires plus anciens
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 commentaires
Jukkrid Boonlkom
le 15 Fév 2018
RB Blackstone
le 16 Fév 2018
This part of the equation produced negative integers.
>> 3+-x+-y
Ans = 3 1 -1 -3
Factorial() requires non-negative integers.
Réponses (1)
C.J. Harris
le 15 Fév 2018
0 votes
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 commentaires
Jukkrid Boonlkom
le 15 Fév 2018
Modifié(e) : Jukkrid Boonlkom
le 15 Fév 2018
Jan
le 16 Fév 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.
Cette question est clôturée.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!