elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Problema con algoritmo encriptador y matriz
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con algoritmo encriptador y matriz  (Leído 4,399 veces)
Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Problema con algoritmo encriptador y matriz
« en: 22 Noviembre 2009, 12:11 pm »

Hola a todos, hoy estaba diseñando un algoritmo que cifra cadenas, cuando me dio un error extraño (puede que sea por mi autodidactia) que no soy capaz de resolver:


Código
  1. public void cifra() {
  2. String cadenaIntroducida = new String("Debci");
  3.  
  4. cadenaIntroducida.toUpperCase();
  5. char[] matrizCaracteres = cadenaIntroducida.toCharArray();
  6. int numeroCaracteres = matrizCaracteres.length;
  7. System.out.println("La cadena tiene " + numeroCaracteres +" caracteres." );
  8. for(int i = 0; i < numeroCaracteres; i++){
  9.    matrizCaracteres[i] = matrizCaracteres[i+1];
  10. }
  11. for(int x = 0; x < numeroCaracteres; x++){
  12.    System.out.println(matrizCaracteres[x]);
  13. }
  14.  
  15. }
La cosa, es que mi algoritmo hace lo siguiente, transforma todos los valores del array en el siguiente del indice, es decir, el valor que este en 0, sera transformado por el que este en 1, el de uno sera el 2, basicamente corre hacia un lado los indices.
Me da un error raro al ejecutar:
Código:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5
        at encriptacion.Encriptador.cifra(Encriptador.java:23)
        at encriptacion.Encriptador.main(Encriptador.java:32)
La cadena tiene 5 caracteres.
Java Result: 1
A que se debe?

Saludos


En línea

Leyer


Desconectado Desconectado

Mensajes: 786


leyer@elhacker.net


Ver Perfil WWW
Re: Problema con algoritmo encriptador y matriz
« Respuesta #1 en: 22 Noviembre 2009, 19:46 pm »

si tu metodo es ese donde  se queda el valor de 0 es decir si colocas "hola" daria esto "olaa" ?


En línea

Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: Problema con algoritmo encriptador y matriz
« Respuesta #2 en: 22 Noviembre 2009, 20:12 pm »

si tu metodo es ese donde  se queda el valor de 0 es decir si colocas "hola" daria esto "olaa" ?
si, mas bien es problema de planteamiento, ya que no se como hacer que se cambien de alguna manera que lo combierta ilegible.

Saludos
En línea

Blitzkrieg'


Desconectado Desconectado

Mensajes: 546


print('Hi there')


Ver Perfil WWW
Re: Problema con algoritmo encriptador y matriz
« Respuesta #3 en: 22 Noviembre 2009, 22:10 pm »

si tu metodo es ese donde  se queda el valor de 0 es decir si colocas "hola" daria esto "olaa" ?
si, mas bien es problema de planteamiento, ya que no se como hacer que se cambien de alguna manera que lo combierta ilegible.

Saludos

Si, porque tu metodo es muy facil de descifrar  ;D
En línea



Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: Problema con algoritmo encriptador y matriz
« Respuesta #4 en: 23 Noviembre 2009, 18:33 pm »

si tu metodo es ese donde  se queda el valor de 0 es decir si colocas "hola" daria esto "olaa" ?
si, mas bien es problema de planteamiento, ya que no se como hacer que se cambien de alguna manera que lo combierta ilegible.

Saludos

Si, porque tu metodo es muy facil de descifrar  ;D
La cosa esta en que no me preccupa que sea facil o no, si no como lo puedo hacer para encriptarlo (por ejemplo) se me ocurrió que podia dividir la string en dos y girarlas y volver a juntarlas.

Pero sigue sin ser efectivo.

Saludos
En línea

-Ramc-


Desconectado Desconectado

Mensajes: 495



Ver Perfil
Re: Problema con algoritmo encriptador y matriz
« Respuesta #5 en: 23 Noviembre 2009, 18:52 pm »

Para la pregunta que haces, el error dá por esta línea:
matrizCaracteres[i ] = matrizCaracteres[i+1];

Cuando i vale 4, está en la letra 'i' y le dices que en donde está la letra 'i' o sea matrizCaracteres[4], guarde la letra matrizCaracteres[i+1] es decir, matrizCaracteres[5] la cual no existe y por eso de lanza el error de desbordamiento del array.
En línea


Shhh... be vewy, vewy, quiet!  I'm hunting wabbits...
LA PANDILLA MAS GRANDE DE MI CIUDAD, SE LLAMA POLICIA NACIONAL.
Debci
Wiki

Desconectado Desconectado

Mensajes: 2.021


Actualizate o muere!


Ver Perfil WWW
Re: Problema con algoritmo encriptador y matriz
« Respuesta #6 en: 23 Noviembre 2009, 18:56 pm »

Para la pregunta que haces, el error dá por esta línea:
matrizCaracteres[i ] = matrizCaracteres[i+1];

Cuando i vale 4, está en la letra 'i' y le dices que en donde está la letra 'i' o sea matrizCaracteres[4], guarde la letra matrizCaracteres[i+1] es decir, matrizCaracteres[5] la cual no existe y por eso de lanza el error de desbordamiento del array.
la cosa es que no se me ocurre como estabilizar esa situacion, ya se que el error ocurre porque intento leer un indice que no existe, pero como se podria hacer para que lea solamente hasta el ultimo?

Saludos
En línea

-Ramc-


Desconectado Desconectado

Mensajes: 495



Ver Perfil
Re: Problema con algoritmo encriptador y matriz
« Respuesta #7 en: 23 Noviembre 2009, 19:00 pm »

Pues poniendole que lea sólamente hasta el último, si pones:

Código:
for(int i = 0; i < numeroCaracteres-1; i++)
Te queda ebcii, por ejemplo.

Puedes hacer que el último sea el primero también, y así por lo menos tienes la cadena completa para posibles algoritmos reversibles, etc. Todo depende de lo que necesites.
En línea


Shhh... be vewy, vewy, quiet!  I'm hunting wabbits...
LA PANDILLA MAS GRANDE DE MI CIUDAD, SE LLAMA POLICIA NACIONAL.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema con un algoritmo
Programación General
9Sergio 4 5,346 Último mensaje 8 Julio 2011, 19:40 pm
por qgpjr
Algoritmo para pintar el interior de una figura en una matriz (¿BFS?)
Programación General
xaps 0 1,742 Último mensaje 7 Diciembre 2013, 18:51 pm
por xaps
Problema con Matriz
Programación C/C++
jonniemaxxx 2 1,461 Último mensaje 21 Mayo 2014, 19:57 pm
por jonniemaxxx
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines