Excel - COMBINACIONES DE 10 ELEMENTOS TOMADAS DE 2 EN 2 Y SIN REPETICION

   
Vista:

COMBINACIONES DE 10 ELEMENTOS TOMADAS DE 2 EN 2 Y SIN REPETICION

Publicado por css2007 (8 intervenciones) el 24/10/2012 12:34:09
Se que el resultado de una combinación de 10 elementos tomados de 2 en 2 y sin repetición, me da 45 ( a través de excell, función combinat), lo que quiero obtener es la 45 combinaciones posibles de la tabla que, en la columna nombre, recoge las siguientes filas -celdas: Alberto, Alfredo, Arturo, Bernardino, Carlos, Gerardo,Ramón, Mendoza, Javier, Tudanca; de tal forma que al ocupar una mesa de capacidad para 10 personas se creen parejas (una persona enfrente de la otra, con lo que resultan 5 parejas por cada vez que se coloque la mesa) y, sin repetición, se obtengan un total de 9 combinaciones ( .. de tal forma que 9 filas de 5 combinaciones (de 2 en dos) por fila, me de un total de 45 combinaciones ) distintas.

Alguine me poidría obtener la tabla de las 9 posiciones, o decirme la forma de realizarlo.

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
Imágen de perfil de JuanC

COMBINACIONES DE 10 ELEMENTOS TOMADAS DE 2 EN 2 Y SIN REPETICION

Publicado por JuanC juanc2942@gmail.com (1054 intervenciones) el 26/10/2012 13:41:01
2;3 6;8 10;9 5;1 4;7
8;4 2;9 3;5 1;6 10;7
9;7 3;10 4;1 5;6 2;8
10;5 2;1 4;3 8;7 9;6
4;2 3;6 8;9 10;1 5;7
9;1 10;4 6;2 7;3 8;5
7;2 6;10 9;3 5;4 1;8
10;2 6;4 7;1 9;5 8;3
1;3 2;5 4;9 6;7 8;10

Saludos, desde Baires, JuanC
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

COMBINACIONES DE 10 ELEMENTOS TOMADAS DE 2 EN 2 Y SIN REPETICION

Publicado por css2007 (8 intervenciones) el 26/10/2012 18:42:41
MUCHISIMAS GRACIAS JUANC
Te pediría, si es posible, que me indiques como lo has hecho, pues aunque es importante el resultado, más importante es saber como hacerlo.
Saludos
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 JuanC

COMBINACIONES DE 10 ELEMENTOS TOMADAS DE 2 EN 2 Y SIN REPETICION

Publicado por JuanC juanc2942@gmail.com (1054 intervenciones) el 26/10/2012 21:21:52
Lo hice por 'fuerza bruta' o prueba y error, como prefieras...
Consta de un algoritmo que genera aleatoriamente -a partir de los números 1 al 10- pares combinados
y otro que procesa las combinaciones, evitando duplicados y pares equivalentes (ej:1,2=2,1).
Alcanzó con unas 800000 combinaciones (pares combinados 1-10) para obtener 9 filas de pares combinados; la fila 10 la hice a mano por simple deducción...

Saludos, desde Baires, JuanC
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 JuanC

COMBINACIONES DE 10 ELEMENTOS TOMADAS DE 2 EN 2 Y SIN REPETICION

Publicado por JuanC juanc2942@gmail.com (1054 intervenciones) el 26/10/2012 23:39:02
otra forma manual y simple... (siguiendo la serie te vas a dar cuenta)

1,2
1,3
1,4
1,5
1,6
1,7
1,8
1,9
1,10
2,3
2,4
2,5
2,6
2,7
2,8
2,9
2,10
3,4
3,5
3,6
3,7
3,8
3,9
3,10
4,5
4,6
4,7
4,8
4,9
4,10
5,6
5,7
5,8
5,9
5,10
6,7
6,8
6,9
6,10
7,8
7,9
7,10
8,9
8,10
9,10

no es difícil hacer un código que lo haga automáticamente...

Saludos, desde Baires, JuanC
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

COMBINACIONES DE 10 ELEMENTOS TOMADAS DE 2 EN 2 Y SIN REPETICION

Publicado por css2007 (8 intervenciones) el 28/10/2012 22:33:02
Gracias JuanC
Lo hecho de foema manual está muy claro y resulta fácil de entender, me preguntaba si me puedes enviarme el algoritmo para hacerlo de forma automática, sobre todo pensando en futuros casos en los que la muestra sea mayor de 10 y/o que la muestra sea de más de 2 en dos.
Un saludo.
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 JuanC

COMBINACIONES DE 10 ELEMENTOS TOMADAS DE 2 EN 2 Y SIN REPETICION

Publicado por JuanC juanc2942@gmail.com (1054 intervenciones) el 29/10/2012 12:52:21
1
2
3
4
5
for i=1 to 10
   for j=i+1 to 10
       p = i & "," & j
   next j
next i



Saludos, desde Baires, JuanC
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 Ricardo Rodriguez (rjrp1944)

COMBINACIONES DE 10 ELEMENTOS TOMADAS DE 2 EN 2 Y SIN REPETICION

Publicado por Ricardo Rodriguez (rjrp1944) (52 intervenciones) el 30/10/2012 00:42:57
Buenas noches

Como no se como anexar un archivo de excel, te adjunto el código fuente

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
41
42
43
Option Explicit
Option Base 1
 
Private Sub Combinaciones2a2()
'   Esta subcutina genera una matriz de 10 por 10 que son las combinaciones de 10 _
    elementos tomados de 2 a 2
 
Dim i As Integer, j As Integer
Dim strMatriz(1 To 10, 1 To 10) As String, strCelda As String
Dim strCeldaMatriz As String
 
    Sheets("Nombres").Select                   '   Se selecciona la Hoja1 (Nombres)
 
    For i = 1 To 10                            '   Se mueve sobre las filas
        strCelda = "B" & i + 1  '   Se selecciona la Celda en la Matriz en memoria
        strMatriz(i, i) = Range(strCelda).Value         '   Diagonal Principal
        strCeldaMatriz = LetraColumna(i + 3) & i + 1 '   Apunta a la celda de la _
                                                         Matriz de salida
        Range(strCeldaMatriz).Value = strMatriz(i, i) '   Escribe en la Matriz de _
                                                    salida el valor de la diagonal
 
        For j = i + 1 To 10        '    Triangulo superior de la diagonal principal
            strCelda = "B" & j + 1 '   Se selecciona la Celda en la Matriz en menoria
            strMatriz(i, j) = Range(strCelda).Value     '   Valores del Triangulo _
                                                    Superior de la Diagonal Principal
            strCeldaMatriz = LetraColumna(j + 3) & i + 1   '   Apunta a la celda de _
                                                               la Matriz de salida
            Range(strCeldaMatriz).Value = strMatriz(i, j)  '   Escribe en la Matriz _
                                                            de salida el valor en TSDP
                '   Formulas para otra forma
                strCeldaMatriz = LetraColumna(j + 3) & i + 13   '   Apunta a la celda _
                                                                de la Matriz de salida
                '   Escribe en la Matriz de salida los dos valores en TSDP
                Range(strCeldaMatriz).Value = strMatriz(i, i) & ", " & strMatriz(i, j)
          Next j
    Next i
 
End Sub
 
Public Function LetraColumna(Columna As Long) As String
    LetraColumna = Replace(Range(Cells(1, Columna), Cells(1, Columna)).Address(False, _
                                                                       False), 1, "")
End Function


En la Hoja1 llamada "Nombres". pones los nombres en la culumna B desde la [B2]

Espero te sea de ayuda.

Saludos

Ricardo
Caracas, Venezuela
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