Un juego más
2010/07/05
Intentaba crear un algoritmo propio para cifrar texto, siempre como un juego, claro está; pero una vez visto el resultado, estoy obligado a aceptar que lo último que hice es horrendo.
Mensaje de prueba:
Resultado 0:
Resultado 1:
A partir de un mensaje pueden derivar muchos resultados, todos correctos -y eso es lo que más me sorprende-. Evidentemente, hay una manera de recuperar el mensaje original a partir de cualquiera de los monstruosos resultados, por esa razón digo que son todos correctos.
Aunque por desgracia, como se puede ver, todas las salidas son muy largas. Y es un hecho que a mayor longitud del mensaje, más intratable será el resultado.
Sirva de ejemplo un fragmento del poema Full of Life, Now de Walt Whitman:
No puedo explicar con detalle el algoritmo ni tampoco liberar el código aún porque es posible que, aunque yo no sepa cuándo ni cómo, esté tentado a hacer algunos cambios. Ésta es todavía una idea temprana e incompleta.
***
Mensaje de prueba:
"Yo no soy demostrable"
Resultado 0:
wx&2Gy%2>!K2]c2W?2jh2P!2hVCx5GU37hB%:Gn[
T<J3>{67;D409?#N#j
N#z2#MF2/cF2%z,J2zMy419X!{eE
/]l2N%<3KJ<C5/g7y&229f/L[L
,h?2&P3P/OX13x{c;227jdANJV
IdQJ62081$OCdhPV
OS2zkc/3?>5{h7Ag229V[Sh;
Ey<87701WV>k>
:WF2d{J11nhh17fRn23,D,;&
gj3V?x3gJ3lCN3sP1013K&<F]
gh61;f{823KR?wlf&
fEk2jXD33529VGhLM
L{$3lhW859R;$ns
UQG7J$1091H<NWDe
+lR2Oj2UFy2<(<5FG5/&Lw5[IflPQ
Resultado 1:
NR2:RQ2GWnT5]?h17N:193zdUh<d ?Vyx23>h3583KjHR< $#2UO4253$:#MfV K#E2lXF5gjD7yV{887zB!#fT >/Q2h&H18553!k$T Rw67?l389QCMx+Q ;X2Gd3N]U5{++P23zhMC61ILzg FK;25303jSk<I sOV2{!3{W1367KRshEE< >F3c<X3WIz3;z2371eA,fD n&!!101yeN503$?;eU! DL2(;Nk23537:$>#XJ %%A2311l&($g VTJ5J,5Oj$e67UsS%x ,B/2;X2;,2P;z3jI5lAX5?sH5w+&I!
***
A partir de un mensaje pueden derivar muchos resultados, todos correctos -y eso es lo que más me sorprende-. Evidentemente, hay una manera de recuperar el mensaje original a partir de cualquiera de los monstruosos resultados, por esa razón digo que son todos correctos.
Aunque por desgracia, como se puede ver, todas las salidas son muy largas. Y es un hecho que a mayor longitud del mensaje, más intratable será el resultado.
Sirva de ejemplo un fragmento del poema Full of Life, Now de Walt Whitman:
"When you read these, I, that was visible, am become invisible"
Xd5>%11+&N331G/>TW W?23OC761XI(EM kec2309n&hc/ HXy2Ee7JDT439!ldUdJ ,U2cJJ2fd[3?<[3<IL5]M37TyeP&] ,z103SEw503<AheH$ <f2Bz{5f;17[j19QC+: $>2Ef2!n2Dk2XOX2BLD5>E317sIng+ Ad3<n3sR3yOx3I+E19UOl31cJGW& Jjn5>Gy811KMGM,B HM2#E5N!7103d!Kx ,%J51503,QDcUg MwQ13:G+23nW23K$N! Bgs2hT3>kA5fzs2803TD?P xP2whl2E(k7Dl2753KjMc 7xM$2E#2De2(R2En2C+B2Uy2;V2AV$2WJ2c:ik, IIT7Ud:7&G&43l$43GcHBXH hc3<l3701H+#M lE3R{13H,e1031X!w&; :G!2J!2f[O3Cs5!f127kj({N XG5VO3607IE#( P/[70901HVnOI
No puedo explicar con detalle el algoritmo ni tampoco liberar el código aún porque es posible que, aunque yo no sepa cuándo ni cómo, esté tentado a hacer algunos cambios. Ésta es todavía una idea temprana e incompleta.
Eliminación gaussiana
Para sistemas de 3x3 (tres incógnitas, tres ecuaciones).
Ejemplo:
Código aquí.
Ejemplo:
-12x + 13y - 20z = -227
6x + 11y - 8z = 37
3x - 3y - 4z = -58
Código aquí.
Es una entrada sobre recursividad
Aunque la mayor parte de las veces alguna estructura del tipo while() es suficiente, no está de más comprender un poco más sobre recursividad, especialmente como concepto matemático.
Una vez que se comprende bien se hace difícil dejar de ver bucles en todas partes, pero tiene su gracia...
Código aquí.
Después de todo,
Una vez que se comprende bien se hace difícil dejar de ver bucles en todas partes, pero tiene su gracia...
Código aquí.
***
"Es una entrada sobre recursividad" es una entrada sobre recursividad.
Generador de sudokus (9x9)
Como siempre, solamente el algoritmo y la salida estándar. No hay más interfaz por ahora. Trabajaré en ello en cuanto pueda.
Código aquí.
Suscribirse a:
Entradas (Atom)