Info

La pregunta está cerrada. Vuélvala a abrir para editarla o responderla.

Why this code is error???

1 visualización (últimos 30 días)
Jukkrid Boonlkom
Jukkrid Boonlkom el 15 de Feb. de 2018
Cerrada: MATLAB Answer Bot el 20 de Ag. de 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 comentarios
Jukkrid Boonlkom
Jukkrid Boonlkom el 15 de Feb. de 2018
If I wanted to make x + y> 3 to f5 = 1, then how to do?
RB Blackstone
RB Blackstone el 16 de Feb. de 2018
This part of the equation produced negative integers.
>> 3+-x+-y
Ans = 3 1 -1 -3
Factorial() requires non-negative integers.

Respuestas (1)

C.J. Harris
C.J. Harris el 15 de Feb. de 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 comentarios
Jukkrid Boonlkom
Jukkrid Boonlkom el 15 de Feb. de 2018
Editada: Jukkrid Boonlkom el 15 de Feb. de 2018
So what should I do? Can I change 3-x-y?
Jan
Jan el 16 de Feb. de 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.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by