TODOPIC

Misceláneas - Interés General => Off Topic => Mensaje iniciado por: Picuino en 17 de Marzo de 2013, 08:40:07

Título: Programa para encontrar anagramas.
Publicado por: Picuino en 17 de Marzo de 2013, 08:40:07
Un anagrama es una palabra o frase que resulta de la transposición de letras de otra palabra o frase.

Por ejemplo Jim Morrison, cantante de los Doors, se apodaba a sí mismo  "Mr. Mojo Risin", anagrama de su nombre.

Los anagramas pueden ser útiles para nombrar proyectos. Por ejemplo el codec Xvid es un anagrama del codec DivX (o viceversa).

Dejo un programa en Python para encontrar anagramas. Está programado para encontrar los anagramas de "Arduino" pero se puede cambiar con facilidad.

Código: Python
  1. def permuta(msg, letras, f):
  2.     """Permuta 'letras' con el mesaje previo 'msg'.
  3.       El resultado lo escribe en el fichero f"""
  4.     if len(letras)==0:
  5.         f.write(msg+'\n')
  6.     else:
  7.        for i in range(len(letras)):
  8.           permuta(msg+letras[i], letras[:i]+letras[i+1:], f)
  9.  
  10.  
  11. nombre = "arduino"
  12. f = open(nombre+'.txt', 'wt')
  13. permuta('', nombre, f)

Adjunto el resultado con la palabra "arduino".

Saludos.

Título: Re: Programa para encontrar anagramas.
Publicado por: Picuino en 17 de Marzo de 2013, 08:52:32
El programa está hecho para la versión 2.7 de Python:

http://www.python.org/download/releases/2.7.3

Saludos.
Título: Re: Programa para encontrar anagramas.
Publicado por: Picuino en 17 de Marzo de 2013, 19:30:29
Un buscador de anagramas en varias lenguas:

http://www.a2zwordfinder.com/anagram_solver.html

Saludos.
Título: Re: Programa para encontrar anagramas.
Publicado por: Nocturno en 18 de Marzo de 2013, 03:06:24
Este te permite aplicar máscaras e incluso te saca las palabras ordenadas por su puntuación:
http://www.palabras-apalabrados.info/
Título: Re: Programa para encontrar anagramas.
Publicado por: Picuino en 18 de Marzo de 2013, 08:50:20
Es bastante bueno el enlace.
Me ha llamado la atención que un anagrama de Arduino que calcula esta página es: DIURNO!
 ;-)

Has escogido el nick contrario al anagrama de Arduino.

Saludos.

Título: Re: Programa para encontrar anagramas.
Publicado por: Nocturno en 18 de Marzo de 2013, 09:09:09
Jajaa  :D