Programación General > Java

 problema con programa de arreglos

(1/2) > >>

krentos8:
import java.io.*;
public class arreglo{
public int[]Leer()throws IOException{
BufferedReader entrada=new BufferedReader(new InputStreamReader(System.in));
int A[]=new int[10];
int B[]=new int[10];
for(int x=0;x<10;x++){

System.out.print("Escribe un numero"+x);
A[x]=Integer.parseInt(entrada.readLine());
}
return A;
}
for(int x=0;x<10;x++){
if(x[y]%2==0)
}
no se como guardar los pares en otro arreglo

m0skit0:
Bienvenido al foro krentos8

Utiliza las etiquetas de código y así queda más bonito y más legible  ;)



--- Código: Java ---for(int x=0;x<10;x++){    if(x[y]%2==0)} Primero, no deberías declarar int x dentro de la inicialización del for. Hazlo fuera.

Segundo, la condición del if debería ser if(A[x]%2 == 0).

Además, necesitas otro contador para el arreglo int B[10] que supongo es donde quieres guardar los números pares. Pongamos por ejemplo int y. Así obtendríamos:


--- Código: Java --- int x, y;y = 0;for(x=0;x<10;x++)    if(A[x]%2==0)        B[y++] = A[x];  
Salud

krentos8:
Gracias por el tip mosquito, soy medio nuevo aun en esto de programar en llama.

krentos8:
import java.io.*;
public class Arreglo{
public int[]Leer()throws IOException{
BufferedReader entrada=new BufferedReader(new InputStreamReader(System.in));
int A[]=new int[10];
for(int x=0;x<10;x++){
System.out.print("Escribe un numero"+x);
A[x]=Integer.parseInt(entrada.readLine());
     }
return A;
}
public int Pares(int A[]){
   int B[]=new int[10];
   int x=0, y;
   for(y=0;y<10;y++){
      if(A[x]%2==0);
      B[y++]=A[x];
   }
    return (x);
   }
public void Imprimir(int []B){

      System.out.println("arreglo de los pares es:"+B);
}
}

import java.io.*;
public class Llamar{
   public static void main(String []args)throws IOException{
      Arreglo obk=new Arreglo();
      int B[]=new int[10];
      obk.Leer();
      obk.Imprimir(B);
   }
}
Ahora el problema que tengo es que solo me muestra un 0

icedTea:
En la clase Llamar, declaras B, pero no le metes nada!. pues que quieres que te va imprimir?  :huh:
Tu if tiene un ; de más... si lo dejas así... te va a tomar todos los valores de A y te los pondrá en B
Cuando declaras una variable en un método, esta dura hasta que el método terminar... declaralas globales en Arreglo


--- Código: Text ---for(y=0;y<10;y++){if(A[x]%2==0);B[y++]=A[x];}  

Salu2.  :hola:

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa