Cifrado (C)

PrinceValium

¡Hola!

Estoy haciendo un programa en C que me permite cifrar un texto siguiendo la siguiente lógica:

http://www.viruslist.com/sp/images/vlill/maciej_encryption_de_pic5.png

Funcionaría de la siguiente forma:

Si quiero la palabra SOL, tendré que coger:

-S = AG (fila, columna)
-O=DD
-L=VX

Entonces la palabra SOL quedaría cifrada en AGDDVX.

Hasta aquí el cómo se hace teóricamente.

Tengo pensado introducir una cadena y luego ir carácter a carácter comparándolo con una tabla bidimiensional.

Pero tengo 2 problemas, dado que no soy muy bueno programando necesito saber:
a) cómo ir leyendo caracter a caracter la cadena e ir comparándola con la array bidimensional.

b) Sé hacer arrays bidimensionales pero normalmente introduciendo yo los datos cuando los pide, pero no me funciona haciendo una tabla "constante" para ir buscando en ella. He probado poniendo por ejemplo: char tabla[50][50] = {{KZWRIF},{9B6CL5},......} pero no me funciona... alguien me podría echar una manita?? xD

Gracias y saludotes.

r2d2rigo

a)

char cadena[50] = "hola en cifrado";

for (int i = 0; i < strlen(cadena); i++)
{
    cifrar(cadena[i]);
}

b)

char tabla[5][5] = 
{
{'a', 'b', 'c', 'd', 'e'},
{'f', 'g', 'h', 'i', 'j'},
...
};
PrinceValium

gracias #2.

Usuarios habituales

  • PrinceValium
  • r2d2rigo