EN UN LUGAR DE LA MANCHA DE CUYO  NOMBRE

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

Mensaje cifrado para enviar E=5, N=14, Espacio=28, U=22 ...)

Codificación del mensaje

Mensaje que se transmite y recibirá el destinatario:

Descodificación del mensaje

Secuencia de trabajo

Cifrado

Convertimos las letras
en números

         Texto para transmitir
(solo los primeros 24 caracteres)

Enviamos el mensaje
codificado que llegará
al receptor

Introducir matriz en
la hoja de cálculo
desde A1 hasta C3

Arreglo 

Las cifras se colocan 
en una matriz 8x3

Codificación

Multiplicamos la matriz
cifrada por la matriz llave

Transmisión

Matriz clave

Matriz inversa

El receptor dispone 
de la matriz clave M 
y calcula la inversa

Descodificación

Se multiplica la matriz
recibida por la inversa
de M

Descifrado

Se sustituye cada cifra
por la letra correspondiente.

Descifrar los códigos obtenidos 5=E, 14=N, 28=Espacio, 22=U ...)

   Introduce la
matriz clave 3 x 3
  en filas 1, 2, 3
columnas A, B, C

Cálculo de la matriz inversa (Gauss-Jordan o método de adjuntos)

Texto :

Se coloca en 8 paquetes
(filas) de formando una
matriz:

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

  El mensaje no se podrá descodificar
porque la matriz clave no tiene inversa

Comenzar

texto02: "" + J4 + ""
listaco = TextToUnicode(texto02)
O = (0, 0)
F1: 1
F2: 2
F3: (2 * F2) - F1
F4: (2 * F3) - F2
F5: (2 * F4) - F3
F6: (2 * F5) - F4
F7: (2 * F6) - F5
F8: (2 * F7) - F6
F9: (2 * F8) - F7
F10: (2 * F9) - F8
F11: (2 * F10) - F9
F12: (2 * F11) - F10
F13: (2 * F12) - F11
F14: (2 * F13) - F12
F15: (2 * F14) - F13
F16: (2 * F15) - F14
F17: (2 * F16) - F15
F18: (2 * F17) - F16
F19: (2 * F18) - F17
F20: (2 * F19) - F18
F21: (2 * F20) - F19
F22: (2 * F21) - F20
F23: (2 * F22) - F21
F24: (2 * F23) - F22
F25: (2 * F24) - F23
F26: (2 * F25) - F24
F27: (2 * F26) - F25
listacod = Take(listaco, 1, 24)
F28: (2 * F27) - F26
G1 = TextToUnicode(E1)
G2 = TextToUnicode(E2)
G3 = TextToUnicode(E3)
G4 = TextToUnicode(E4)
G5 = TextToUnicode(E5)
G6 = TextToUnicode(E6)
G7 = TextToUnicode(E7)
G8 = TextToUnicode(E8)
G9 = TextToUnicode(E9)
G10 = TextToUnicode(E10)
G11 = TextToUnicode(E11)
G12 = TextToUnicode(E12)
G13 = TextToUnicode(E13)
G14 = TextToUnicode(E14)
G15 = TextToUnicode(E15)
G16 = TextToUnicode(E16)
G17 = TextToUnicode(E17)
G18 = TextToUnicode(E18)
G19 = TextToUnicode(E19)
G20 = TextToUnicode(E20)
G21 = TextToUnicode(E21)
G22 = TextToUnicode(E22)
G23 = TextToUnicode(E23)
G24 = TextToUnicode(E24)
G25 = TextToUnicode(E25)
G26 = TextToUnicode(E26)
G27 = TextToUnicode(E27)
G28 = TextToUnicode(E28)
listaN: {F1, F2, F3, F4, F5, F6, F7, F8, F9, F10, F11, F12, F13, F14, F15, F16, F17, F18, F19, F20, F21, F22, F23, F24, F25, F26, F27, F28}
listacofr: {G1, G2, G3, G4, G5, G6, G7, G8, G9, G10, G11, G12, G13, G14, G15, G16, G17, G18, G19, G20, G21, G22, G23, G24, G25, G26, G27, G28}
aa = IndexOf({Element[listacod, 1]}, listacofr)
listafras = Sequence(IndexOf[{Element[listacod, i]}, listacofr], i, 1, 24)
textob22: "" + listafras + ""
A1: 5
B1: 6
C1: 2
A2: 3
B2: 2
C2: 1
A3: 2
B3: 0
C3: 0
m: {{A1, B1, C1}, {A2, B2, C2}, {A3, B3, C3}}
mi: m^(-1)
m1mens = Sequence(Sequence[Element[listafras, (3 * (j - 1)) + i], i, 1, 3], j, 1, 8)
m2cod: (m1mens * m)
textob3: "" + (LaTeX[m1mens]) + ""
listacodif1 = Sequence(Element[m2cod, i, 1], i, 1, 8)
listacodif2 = Sequence(Element[m2cod, i, 2], i, 1, 8)
listacodif3 = Sequence(Element[m2cod, i, 3], i, 1, 8)
listacodif = Join({listacodif1, listacodif2, listacodif3})
textob55: "" + listacodif + ""
lista1: {}
m3descod: (m2cod * mi)
lista2: {}
n = 9 (slider from 1 to 9, step 1)
m1mens2 = Sequence(Sequence[Element[listafras, (8 * (j - 1)) + i], i, 1, 8], j, 1, 3)
m2cod2: (m * m1mens2)
m3descod2: (mi * m2cod2)
textob88: "" + texto02 + ""
A = (-3.96, 1.6571299093655623)
B = (-4.36, 1.0435347432024207)
C = (4.04, 3.8)
D = (5.94, 3.82)
textob11: "M = " + (LaTeX[m]) + ""
textoa222: "M = " + (LaTeX[m]) + ""
texto4: "M^{-1}=" + (LaTeX[mi]) + ""
A40: 1
B40: 0
C40: 0
A41: 0
B41: 1
C41: 0
A42: 0
B42: 0
C42: 1
mid = Identity(3)
mz1 = Join({m, mid})
textob66: "" + (LaTeX[m]) + "" + (LaTeX[mid]) + ""
textob666: "" + (LaTeX[mid]) + "" + (LaTeX[mi]) + ""
texto022 = Take(texto02, 1, 24)
texto1: "" + texto022 + ""
E = (-2.02, -1.62)
F = (-2, -0.04)
v = Vector(E, F)
CasillaDeEntrada1 = Textfield(J4)
B5: 1
B6: 2
B7: (2 * B6) - B5
B8: (2 * B7) - B6
B9: (2 * B8) - B7
B10: (2 * B9) - B8
B11: (2 * B10) - B9
B12: (2 * B11) - B10
B13: (2 * B12) - B11
B14: (2 * B13) - B12
B15: (2 * B14) - B13
B16: (2 * B15) - B14
B17: (2 * B16) - B15
B18: (2 * B17) - B16
B19: (2 * B18) - B17
B20: (2 * B19) - B18
B21: (2 * B20) - B19
B22: (2 * B21) - B20
B23: (2 * B22) - B21
B24: (2 * B23) - B22
B25: (2 * B24) - B23
B26: (2 * B25) - B24
B27: (2 * B26) - B25
B28: (2 * B27) - B26
B29: (2 * B28) - B27
B30: (2 * B29) - B28
B31: (2 * B30) - B29
B32: (2 * B31) - B30
texto3: "Paso " + n + ""
textob77: "" + (LaTeX[m2cod]) + "  ·  \; " + (LaTeX[mi]) + " \;  = \; " + (LaTeX[m3descod]) + ""
textob4: "" + (LaTeX[m1mens]) + " \; ·  \; \; " + (LaTeX[m]) + "  \; \;   =  \; " + (LaTeX[m2cod]) + ""
lista3: {}
dm = Determinant(m)