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

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


  Mostrar Mensajes
Páginas: 1 2 3 4 5 [6] 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ... 37
51  Programación / Java / Re: necesito por favor que me ayuden con el algoritmo en JAVA ECLIPSE indigo en: 28 Octubre 2011, 00:56 am
Ya que Java es orientado a objetos, create una clase Dado. Esta clase tendrá, por ejemplo, un atributo de tipo entero que representará la cara del dado que se ve, es decir, el número que ha salido en la tirada y otro atributo de tipo Random. Haz clic y verás la documentación el método que te interesa.

Tendrás un método llamado void tirar(). Este método tendría que coger el objeto de tipo randome que has creado como atributo y llamar al método especificado en el enlace que te he puesto, asignas dicho valor a la variable entera que te has declarado y listo.

Luego tendrás una clase que implementará el método Main. Esta clase deberá declarar dos objetos de tipo Dado. El resto del problema es bastante fácil como para que lo termines sin ningún consejo más.

Un saludo.
52  Programación / Java / Re: Progress Bar o Gif animado en: 22 Octubre 2011, 01:32 am
No he tenido el gusto de programar algo que necesitase una barra de progreso, pero por la documentación de Java he encontrado esto:

http://download.oracle.com/javase/tutorial/uiswing/components/progress.html

Espero que te sirva.

Saludos.
53  Programación / Java / Re: [RESUELTO] Desesperado...{pasar una frase a un array, una palabra por poscion} en: 21 Octubre 2011, 21:44 pm
No necesitas crear una nueva instancia del array, el propio método split te devuelve el objeto ya instanciado.

El bucle for que dices que no entiendes es un bucle "for each" es decir, para cada uno de los elementos del array hacer...lo que sea.

Te dejo una referencia a Wikipedia por si quieres echar un vistazo:

http://en.wikipedia.org/wiki/Foreach_loop#Java

Basandome en tú código y con la modificación que te he dicho quedaría así:

Código
  1. public static void main(String[] args) {
  2.        String frase=new String();
  3.        Scanner s=new Scanner(System.in);
  4.        System.out.print("Introduce frase: ");
  5.        frase=s.nextLine();
  6.  
  7.        String []miArray;
  8.        miArray=frase.split(" +");
  9.  
  10.        for(String palabra : miArray){
  11.            System.out.println(palabra);
  12.        }
  13.    }

Saludos.
54  Programación / Java / Re: Desesperado...{pasar una frase a un array, una palabra por poscion} en: 19 Octubre 2011, 23:11 pm
Si en el ejercicio no te pone ninguna limitación podrías hacer uso del método split() de la clase String. La cosa sería, lees la cadena de teclado guardandola en un String, aplicas el método split() que te devuelve un array de cadenas.

El parametro de la función es una expresión regular.

El código que te propongo sería algo así:

Código
  1. String linea = escaner.nextLine();
  2. linea = linea.trim();
  3. String[] vector = linea.split(" +");

Luego recorres ese array y listo. El parámetro (" +") representa uno o más espacios, por tanto, aunque las palabras estén separadas por muchos espacios en cada posición del array solo tendrás una cadena de caracteres.

El error me imagino que te lo da por hacer esto: (" ", pos_espacio+1)+1, estás avanzando siempre un caracter, en algún momento te saltas alguna palabra, llegas antes al final, te devuelve -1 e intentas acceder con un -1 en la función substring.

Saludos.
55  Programación / Java / Re: [Actualizado] Ayuda código Java en: 16 Octubre 2011, 14:10 pm
No, no me refiero a eso, me refiero a algo así:
Código
  1. public void metodo(double[] centro){
  2.    //Suponiendo que centro solo tiene dos posiciones:
  3.    double[] nuevo = new double[2];
  4.    nuevo[0] = centro[0];
  5.    nuevo[1] = centro[1];
  6.    bloque = new Bloque(nuevo, color);
  7. }

algo así me refiero. Tienes que realizar una copia del array, porque me imagino que al hacer estas dos llamadas:
Código
  1. super(center,color);
  2. bloq[i] = new Bloque(center,color);

dentro del código de cada constructor estarás haciendo algo así:
Código
  1. this.centro = center //<-Aliasing

En resumen, tienes que hacer una copia del array si quieres tener centros distintos e independientes.

Y te vuelvo a repetir, leete mucha más teoría. La práctica es necesaria, pero la teoría es mucho más importante.

Saludos.


56  Programación / Java / Re: [Actualizado] Ayuda código Java en: 15 Octubre 2011, 23:38 pm
El error se llama "Aliasing".

En Java todo lo que le pasas a una función como parametro, lo que se pasa realmente es el identificador de objeto (su referencia en memoria, por decirlo de alguna forma), por tanto las modificaciones que realices sobre dicho objeto se verán reflejadas fuera.

Es decir, aunque no hicieses esta modificación:
Código
  1. if(i==1){center[0]++ ;center[1]--;}else{center[1]++;}
todos tus objetos seguirían teniendo el mismo centro.

¿Cuál puede ser la solución? Realizar una copia del array y asignarle al centro la copia, o crear un array nuevo y ponerle los distintos valores.

Te recomiendo que te leas muchos muchos muchos apuntes, si no dominas estas cosas tan básicas, estás perdido en Java.

Saludos.
57  Programación / Java / Re: [Actualizado] Ayuda código Java en: 15 Octubre 2011, 16:05 pm
Viendo que has actualizado el código, ¿a que te refieres con que si está mal? ¿No te da el resultado esperado? ¿Cuál es el resultado que esperas que te de?
58  Programación / Java / Re: AYUDAAAAA NECESITO AYUDA CON CODIGO JAVA KiEN ME AYUDA en: 13 Octubre 2011, 01:43 am
Revisate toda la teoría que tengas, sobre todo los conceptos de herencia. Estás haciendo uso de super de una manera terrible.

Saludos.
59  Programación / Ejercicios / Re: Ayuda con string y matriz =( en: 12 Octubre 2011, 13:43 pm
Lo primero es que este post lo podrías haber colocado en el subforo de Java, pero aún así estos son los pasos que deberías seguir:

1º) Leer el texto:
   
    Puedes hacerlo con un BufferedReader y leer una linea completa (en caso de usar esta alternativa al leerla tendrás que comprobar que no excede los 42 caracteres) o también leyendo caracter a caracter hasta que te encuentres un retorno de carro o que se hayan leido 42 caracteres (en este caso podrías ir almacenando los datos en un StringBuffer.

2º) Almacenarlo en una matriz:
   
    Si quieres que el tamaño de la matriz sea el justo para que te quepan los caracteres haces la división del tamaño del String que has leído y lo divides entre 6 (el número de columnas), de esa división redondeas a la parte alta (es decir, si el resultado fuese 6.42 pues tu pondrás 7 filas) y ya declaras un array de caracteres con el tamaño de X filas y 6 columnas. Lo recorres al mismo tiempo que recorres la cadena de caracteres y los metes en el array.

¿Qué debes tener en cuenta? Si el String tiene por ejemplo 16 caracteres tú tendrás un array de 3x6 al intentar insertar las últimas dos posiciones tendrás que tener en cuenta que la cadena ya se ha acabado y por tanto no intentar acceder a una posición incorrecta.

Espero que te sirva.

Saludos.
60  Programación / Java / Re: Pasar seudocodigo a JAVA en: 12 Octubre 2011, 13:22 pm
Estás aprendiendo Java, ¿has intentado hacer algo? (SI) postealo (NO) intentalo.

Saludos.
Páginas: 1 2 3 4 5 [6] 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 ... 37
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines