Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/12/2015, 14:36
jakoito90
 
Fecha de Ingreso: diciembre-2015
Ubicación: Granada
Mensajes: 9
Antigüedad: 8 años, 5 meses
Puntos: 0
Pregunta Cifrador de Polybios

Hola a todos!

Soy el nuevo usuario en el Foro del Web. Os voy a comentar que he intentado hacer un 'if' para descifrar el mensaje y me obliga a poner las comas en 'prompt' (Por ejemplo, AA,EA,DB,AE). ¿Ayúdame a solucionar sin comas?

Y también, a la hora de descifrar el mensaje, si yo introduzco una sola letra 'I', el resultado me sale 'IJ' porque en la tabla de Polybios, hay una celda con dos letras juntas. Eso lo quiero saber para solucionar, ¿Ayúdame a solucionar?.

Código:
		<script type="text/javascript" >

var menu = "Elija la opción deseada (1-3):\n\
1. Cifrar el mensaje\n\
2. Descifrar el mensaje\n\
3. Salir";

var opcion = prompt(menu);
	
var normal = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',' '];
var cifrado = ['AA','AB','AC','AD','AE','BA','BB','BC','BD','BD','BE','CA','CB','CC','CD','CE','DA','DB','DC','DD','DE','EA','EB','EC','ED','EE',' '];
var resultado = [];	

if ( opcion == "1" ) {
	var texto = prompt("Introduce un mensaje para cifrarlo: ").split("");
			
	for ( var i = 0; i < texto.length; i++ ) {
		for ( var j = 0; j < normal.length; j++ ) {
			if ( texto[i] == normal[j] ) {resultado.push(cifrado[j])};
		}
	}
		
	alert("Este mensaje cifrado es <<" +resultado.join("")+ ">>.");
	location.reload();

} else if (opcion == "2") {
	var texto = prompt("Introduce el mensaje cifrado para descifrarlo (Por ejemplo, AA,EA,DB): ").split(",");

	for ( var i = 0; i < texto.length; i++ ) {
		for ( var j = 0; j < normal.length; j++ ) {
			if ( texto[i] == cifrado[j] ) {resultado.push(normal[j])};
		}
	}
	
	alert("Este mensaje descifrado es <<" +resultado.join("")+ ">>.");
	location.reload(); 

} else if (opcion == "3") {
	alert("Saliendo del programa, ¡hasta luego!");
	
} else {
	alert("¡Error, debes introducir (1-3)!");
	location.reload();
}
					
		</script>
Por favor y Gracias
Un saludo!

Última edición por jakoito90; 11/12/2015 a las 16:20