no se por donde empezar para explicar el proyecto... pero lo intentare...
teniendo:
a-a
a-b
a-c
a-d
b-a
b-b
b-c
b-d
c-a
c-b
c-c
c-d
d-a
d-b
d-c
d-d
necesito que calcule todas las posibilidades para enlazarlos todos...
ejemplo:
a-b b-c c-d d-d
a-b b-c c-a
etc, etc...
y como el titulo bien lo dice... necesito orientación... que debería hacer para crear este tipo de programa???
de antemano... gracias!!!
pd: la idea es para palabras y no para letras
Las posibilidades son NxN.
http://es.wikipedia.org/wiki/Permutaci%C3%B3n
no creo que sea lo que te piden..... :P
Es un problema basico de combinatoria, hacer un programa para ello tan solo tendrias que usar la funcion pow(). Lo resuelves elevando el numero total de letras distintas al numero de letras que tendria la palabra.
Cita de: peterfly en 6 Julio 2013, 13:07 PMnecesito que calcule todas las posibilidades para enlazarlos todos...
ejemplo:
a-b b-c c-d d-d
a-b b-c c-a
etc, etc...
y como el titulo bien lo dice... necesito orientación... que debería hacer para crear este tipo de programa?
Por lo que veo no son permutaciones sino combinaciones donde un elemento x-y debe esta colocado después de uno ?-x y antes de uno y-?. ¿Estoy en lo correcto?
Si publicas toda la información que tengas sobre el programa tal vez alguien pueda ayudarte.
Un saludo
No entendí muy bien, pero esto es lo qué pude hacer a mi entender de lo qué quisiste decir:
#include <iostream>
#include <stdio.h>
#include <windows.h>
int main()
{
int a , b;
char abecedario[28] = {'a','b','c','d','e','f','g','h','i','j','k','l','m','n',char(164),
'o','p','q','r','s','t','u','v','w','x','y','z',0};
for( a = 0 ; a < 27 ; a++ )
{
printf("<------ Letra '%c' ----->\n",abecedario[a]);
for( b = 0 ; b < 27 ; b++ )
{
std::cout << abecedario[a] << " - " << abecedario[b] << std::endl;
Sleep(100);
}
printf("\n");
}
std::cin.get();
return 0;
}
OnTopic: Perdona si no es eso lo qué quieres. :)
Por lo que veo no son permutaciones sino combinaciones donde un elemento x-y debe esta colocado después de uno ?-x y antes de uno y-?. ¿Estoy en lo correcto?
asi es necesito todas las combinaciones posibles entre la varias palabras... la idea es para averiguar todas las rutas posibles de estaciones del juego deepolis...
http://deepolis.republika.pl/eng.swf
y como no se por donde empezar ni que deberia acer... ay la pregunta...
por cierto lo de NxN es solo para letras o tambien puedo poner palabras??? i como
ejemplo de una ruta del deepolis:
Balanza-Lead-Sonaris
Sonaris-Magnesium-Balanza
y asi ay muxas mas...
Cita de: peterfly en 10 Julio 2013, 23:54 PMpor cierto lo de NxN es solo para letras
Lo de NxN es solo si tienes 2 posibilidades que se pueden repetir (si no se pueden repetir serían Nx(N-1)).
Si lo que quieres es un algoritmo que te genere las combinaciones, hice uno hace unos 4 años: http://foro.elhacker.net/programacion_cc/c_aplicacion_similar_a_zip_recovery_password-t247298.0.html
Es muy básico, simplemente eso, el algoritmo principal
Saludos