Matlab - Duda sobre codigo

 
Vista:
sin imagen de perfil

Duda sobre codigo

Publicado por Fernado (6 intervenciones) el 01/02/2017 18:19:44
Hola, muy buenas a todos. En otros post hace algunas semanas algunos miembros del foro me ayudaron para resolver unos problemas que tenia sobre un programa en MATLAB que sirviese para realizar un cifrado con el método afín y ahora me ha surgido una duda, pero antes podre el código del programa:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
clear all
L='ABCDEFGHIJKLMÑNOPQRSTUVWXYZ';
N=0:26;
a=2; b=3; n=length(N);
P='LIBRO'
for i=1:length(P)
    for j=1:length(L)
        if P(i)==L(j)
            x(i)=N(j);
            nn(i)=a*x(i)+b;
            l(i)=mod(nn(i),n);
           C(i)=L(l(i)+1);
        end
    end
end
 
encriptado=C

Para completar el programa le añadí un menú donde podía escoger desencriptar el mensaje pero ahora me ha surgido una duda. ¿ Como es posible que este código sea capaz de encriptar por ejemplo: "hola mundo" perfectamente y después con la parte que añadí pueda desencriptarlo sin problemas si en la variable L, donde se alamacenan todas las letras del abecedario, no he introducido el espacio como una posibilidad?

Perdonad si no me he explicado bien. Muchas gracias y espero que me ayudéis a resolver esta pequeña duda sobre como entender enteramente el funcionamiento del código"
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Duda sobre codigo

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 01/02/2017 18:59:21
Para poder entender el código , ejecute el código manualmente, es decir ud. haga el papel de matlab. La parte de desencriptación no ha puesto en el código.

Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Servicios de programación matlab


http://matlabcaballero.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Duda sobre codigo

Publicado por Fernado (6 intervenciones) el 01/02/2017 19:08:45
Por ejemplo quiero codificar: "hola mundo". ¿Al haber un espacio no debería dar error al llegar al espacio entre las dos palabras ya que con contemplo ese espacio entre palabras en la variable L que es donde estan las letras del abecedario pero no hay ningún espacio?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Duda sobre codigo

Publicado por Fernado (6 intervenciones) el 01/02/2017 19:17:44
Lo encripta perfectamente. Mi duda simplemente es por qué al llegar al espacio entre palabra no da error si yo en la variable L='ABCDEFGHIJKLMÑNOPQRSTUVWXYZ' no pongo el espacio como una posible valor.

Es simplemente una duda de como se ejecuta el codigo en e caso de que entre palabras exista una espacio.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Duda sobre codigo

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 01/02/2017 19:34:03
1
2
3
4
5
6
7
8
9
10
11
12
¿Y el código de desencriptación?. No está en el código que ha subido.
 
> encriptacion_afin2
 
P =
 
MATLAB PROGRAMADOR JOSE JEREMIAS CABALLERO  PROGRAMADOR EN MATLAB
 
 
encriptado =
 
ADPYDF IMGOMDADJGM UGNL ULMLASDN HDFDYYLMG  IMGOMDADJGM LE ADPYDF

Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
Servicios de programación matlab


http://matlabcaballero.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar