Matlab - Matriz de Combinacion progresiva

 
Vista:
sin imagen de perfil

Matriz de Combinacion progresiva

Publicado por Luis (2 intervenciones) el 03/05/2017 05:35:20
Buenas Noches, quisiera pedir ayuda, necesito realizar una matriz de tamaño b X 2, siendo a un numero positivo, pero que el resultado sea el siguiente:

siendo a=3:

matriz 9 X 2:

1 1
1 2
1 3
2 1
2 2
2 3
3 1
3 2
3 3

y asi para cualquier numero a dado. muchas gracias
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
sin imagen de perfil

Matriz de Combinacion progresiva

Publicado por Luis (2 intervenciones) el 03/05/2017 18:26:25
Ya encontré la solución, lo que se debe hacer es combinar los vectores con el comando combvec y luego cambiar orden de filas o columnas y orientación de la matriz según la necesidad del programador, así:

1
2
3
4
5
6
7
t=zeros(9,2);
a=[1:1:3];
b=[1:1:3];
 
t=combvec(a,b);
t=t';
t(:,[1 2])=t(:,[2 1])

y la salida en matlab es:

1
2
3
4
5
6
7
8
9
10
11
t =
 
     1     1
     1     2
     1     3
     2     1
     2     2
     2     3
     3     1
     3     2
     3     3
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

Matriz de Combinacion progresiva

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 04/05/2017 01:45:28
1
2
3
4
5
6
7
clear all
a=round(20*rand)
v=[];
for i=1:a
    v=[v; i*ones(a,1)  [1:a]'];
end
v


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
37
38
39
40
>> matriz_combinacion_regresiva
a =
     2
 
v =
     1     1
     1     2
     2     1
     2     2
 
 
a =
     5
 
v =
     1     1
     1     2
     1     3
     1     4
     1     5
     2     1
     2     2
     2     3
     2     4
     2     5
     3     1
     3     2
     3     3
     3     4
     3     5
     4     1
     4     2
     4     3
     4     4
     4     5
     5     1
     5     2
     5     3
     5     4
     5     5

Saludos
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Servicios de programación matlab


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