Effacer les filtres
Effacer les filtres

Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

Why this code is error???

1 vue (au cours des 30 derniers jours)
Jukkrid Boonlkom
Jukkrid Boonlkom le 15 Fév 2018
Clôturé : MATLAB Answer Bot le 20 Août 2021
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
Jukkrid Boonlkom le 15 Fév 2018
If I wanted to make x + y> 3 to f5 = 1, then how to do?
RB Blackstone
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
C.J. Harris le 15 Fév 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 commentaires
Jukkrid Boonlkom
Jukkrid Boonlkom le 15 Fév 2018
Modifié(e) : Jukkrid Boonlkom le 15 Fév 2018
So what should I do? Can I change 3-x-y?
Jan
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.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by