Info

Questa domanda è chiusa. Riaprila per modificarla o per rispondere.

Why this code is error???

1 visualizzazione (ultimi 30 giorni)
Jukkrid Boonlkom
Jukkrid Boonlkom il 15 Feb 2018
Chiuso: MATLAB Answer Bot il 20 Ago 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 Commenti
Jukkrid Boonlkom
Jukkrid Boonlkom il 15 Feb 2018
If I wanted to make x + y> 3 to f5 = 1, then how to do?
RB Blackstone
RB Blackstone il 16 Feb 2018
This part of the equation produced negative integers.
>> 3+-x+-y
Ans = 3 1 -1 -3
Factorial() requires non-negative integers.

Risposte (1)

C.J. Harris
C.J. Harris il 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 Commenti
Jukkrid Boonlkom
Jukkrid Boonlkom il 15 Feb 2018
Modificato: Jukkrid Boonlkom il 15 Feb 2018
So what should I do? Can I change 3-x-y?
Jan
Jan il 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.

Questa domanda è chiusa.

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by