Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: JassNorris en 22 Enero 2016, 18:01 pm



Título: Programa Anagrama en C
Publicado por: JassNorris en 22 Enero 2016, 18:01 pm
Hola buenas a todos, soy nuevo aquí, y me gustaría si alguien me pudiese ayudar por favor.
Tengo que hacer un programa que se llama Anagrama, en que yo introduzco varias palabras y acabo con un punto, y luego introducir un texto de largada indefinida y el programa lo que me tiene que hacer es buscar anagramas de las palabras que he introducido.

Si alguien me puede ayudar, se lo agradecería muchísimo.

Saludos


Título: Re: Programa Anagrama en C
Publicado por: D4RIO en 25 Enero 2016, 01:23 am
¿A qué te refieres con 'texto de largada'?

¿Podrías hacer una especie de simulación de lo que introducirías, y lo que esperas obtener? A veces lo más difícil de hacer un programa es entender qué es lo que la gente pretende que haga.

Si te explicas mejor, sería más fácil.


Título: Re: Programa Anagrama en C
Publicado por: do-while en 25 Enero 2016, 11:14 am
¡Buenas!

Los anagramas de una palabra dada son permutaciones con repetición (si no hubiese letras repetidas simplemente serían permutaciones, pero éstas últimas son un caso particular de las primeras) de las letras que la componen. En cuanto crees tu algoritmo para generar las permutaciones con repetición habrás solucionado el 90% de tu probelma. Luego siempre puedes recurrir a un diccionario, por ejemplo cargado en un árbol binario o un vector ordenado, para realizar busquedas (binarias en el caso de vector) y determinar cuales de entre todas la permutaciones que has generado tienen sentido como palabras.

¡Saludos!