Matlab - ¿Qué me falla en esta función?

 
Vista:
sin imagen de perfil

¿Qué me falla en esta función?

Publicado por Andrea (4 intervenciones) el 13/11/2016 04:10:59
¿Que debo hacer para que esta función haga lo que dice en la 2ª y 3ª línea (%)?
Me falla creo a la hora de saber si es determinada o indeterminada.
Gracias por vuestras contestaciones :)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
function []= discutir(A)
% Se le da un sistema de ecuaciones (con los resultados) y nos muestra:
% el carácter del sistema(si es compatible o no, y en caso afirmativo, si es determinado o indeterminado) así como su valor.
n=columns(A);
Solucion=rref(A)
X=Solucion(:,1:n-1);
if rank(Solucion)==rank(X)
disp('')
disp('Es compatible')
disp('')
else
disp('')
disp('No es compatible')
disp('')
endif
i=1
z=0
do
if X(:,i)!=0
z=z+1;
i=i+1;
else
i=i+1;
endif
until i==n-1
end
if z==columns(X)
disp('')
disp('Es determinado')
disp('')
else
disp('')
disp('Es indeterminado')
disp('')
end
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Royeth
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

¿Qué me falla en esta función?

Publicado por Royeth (1818 intervenciones) el 13/11/2016 05:05:31
el programa está en otro lenguaje parecido a matlab , traté de ajustarlo pero no sé si algunas funciones que implementa OCTAVE tengan algún grado de diferencia , de todas maneras con esta traducción es posible ejecutarlo en Matlab

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
function []= discutir(A)
% Se le da un sistema de ecuaciones (con los resultados) y nos muestra:
% el carácter del sistema(si es compatible o no, y en caso afirmativo, si es determinado o indeterminado) así como su valor.
n=size(A,2);
Solucion=rref(A)
X=Solucion(:,1:n-1);
if rank(Solucion)==rank(X)
disp('Es compatible')
else
disp('No es compatible')
end
i=1
z=0
while i~=n-1
if X(:,i)~=0
z=z+1;
i=i+1;
else
i=i+1;
end
end
if z==size(X,2)
disp('Es determinado')
else
disp('Es indeterminado')
end

saludos
https://www.facebook.com/royethmatlab/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

¿Qué me falla en esta función?

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 13/11/2016 18:33:18
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
function  discutir(A)
% Se le da un sistema de ecuaciones (con los resultados) y nos muestra:
% el carácter del sistema(si es compatible o no, y en caso afirmativo, si es determinado o indeterminado) así como su valor.
 
%A=[ 1 2 3 -9 ;4 2 5 -7; -6 -5 -1 -1] ;  %sistema compatible determinado
 
%https://www.youtube.com/watch?v=SrzqI9x_LZQ
%A=[ 1 1 1 3; 2 -1 -3 -2; 3 0 -2 1]  ; %sistema compatible indeterminado
 
% https://www.youtube.com/watch?v=LYzFHKz1Yyc
%A=[-1 1 -1 1; 2 1 -1 2; 1 2 -2 5];   %sistema no  compatible
n=size(A,2);
Solucion=rref(A)
X=Solucion(:,1:n-1)
 
if rank(Solucion)==rank(X)
disp('Es compatible')
i=1;
z=0;
while i<=n-1
    if sum(X(i,:))~=0
      z=z+1;
      i=i+1;
    else
       i=i+1;
    end
end
 
if z==size(X,2)
    disp('Es determinado')
else
    disp('Es indeterminado')
end
else
disp('No es compatible')
end


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
>> A=[ 1 2 3 -9 ;4 2 5 -7; -6 -5 -1 -1] ,discutir(A)
 
A =
 
     1     2     3    -9
     4     2     5    -7
    -6    -5    -1    -1
 
 
Solucion =
 
    1.0000         0         0    2.2642
         0    1.0000         0   -2.0377
         0         0    1.0000   -2.3962
 
 
X =
 
     1     0     0
     0     1     0
     0     0     1
 
Es compatible
Es determinado


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
>> A=[ 1 1 1 3; 2 -1 -3 -2; 3 0 -2 1] ,discutir(A)
 
A =
 
     1     1     1     3
     2    -1    -3    -2
     3     0    -2     1
 
 
Solucion =
 
    1.0000         0   -0.6667    0.3333
         0    1.0000    1.6667    2.6667
         0         0         0         0
 
 
X =
 
    1.0000         0   -0.6667
         0    1.0000    1.6667
         0         0         0
 
Es compatible
Es indeterminado

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
>> A=[-1 1 -1 1; 2 1 -1 2; 1 2 -2 5], discutir(A)
 
A =
 
    -1     1    -1     1
     2     1    -1     2
     1     2    -2     5
 
 
Solucion =
 
     1     0     0     0
     0     1    -1     0
     0     0     0     1
 
 
X =
 
     1     0     0
     0     1    -1
     0     0     0
 
No es compatible

Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
programador en matlab
Servicios de programación matlab
[email protected]


http://matlabcaballero.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar