Java ajuda

DarkT

Power Member
O programa java tem que pedir 10 numeros se introduzir o 0 para. Já fiz mas nao consigo meter a saida assim fica tipo:

2 e par
4 e par ..

3 e impar
5 e impar...

Devia ficar assim:

Saida:

Pares:2 4 6 40
Impares: 3 5 37 89

Código:
import java.util.Scanner;
public class ex3 {
 
    public static void main (String [] args) 
    {
 
        Scanner teclado=new Scanner(System.in);
 
        System.out.println("Pode introduzir 10 numeros se introduzir o numero '0' o programa para!");
 
        int i=0,n=1,j=0;
        int [] n1 =new int [10];
 
 
 
        while (j<10 && n!=0)
        {
            System.out.println("Introduza um numero");
            n=teclado.nextInt();    
            n1[j]=n;
            j++;
        }
 
        for (i=0; i<j; i++) 
        {    
            if (n1[i]>0)
            {
                if(n1[i]%2==0)
                System.out.println("O numero "+n1[i]+" e par");                
                else     
                System.out.println("O numero "+n1[i]+" e impar");        
            }
        }
 
 
 
    }
 
 
}

É um probelma noob mas nao tou haver como conseguir ..
 
Última edição pelo moderador:
Talvez usar 2 arrays auxiliares. Pegas no array inicial, vês quais são os pares e colocas num array, vês quais são os ímpares e colocas noutro. Depois basta iterares sobre ambos, e escrever a frase final.
 
ou como o Baderous disse ou então, para não mudar o que tens, formas duas frases de saída, tipo:
Código:
String pares="", impares="";

for (i=0; i<j; i++) 
        {  
               if (n1[i]>0)
               {
                      if(n1[i]%2==0)
                        pares = pares.concat(n1[i]+" ");
                      else     
                        impares = impares.concat(n1[i]+" ");
               }
        }

System.out.println("Pares:"+pares);
System.out.println("Impares:"+impares);
 
podem fechar =)

ja ta a funcar

Obrigado

Código:
import java.util.Scanner;
public class ex3 {

    public static void main (String [] args) 
    {

        Scanner teclado=new Scanner(System.in);

        System.out.println("Pode introduzir 10 numeros se introduzir o numero '0' o programa para!");

        int i=0,n=1,j=0;
        int [] n1 =new int [10];



        while (j<10 && n!=0)
        {
            System.out.println("Introduza um numero");
            n=teclado.nextInt();    
            n1[j]=n;
            j++;
        }

        int [] pares =new int [j];
        int [] impares =new int [j];


        for (i=0; i<j; i++) 
        {    
            if (n1[i]>0)
            {
                if(n1[i]%2==0)
                    pares[i]=n1[i];        
                else    
                    impares[i]=n1[i];
            }
        }

        System.out.print("Pares:");
        for (i=0; i<pares.length; i++)
        {
            if (pares[i]!=0)
            System.out.print(" "+pares[i]);
        }
        System.out.println("");
        System.out.print("Impares:");
        for (i=0; i<impares.length; i++)
        {
            if (impares[i]!=0)
            System.out.print(" "+impares[i]);
        }

    }

}
 
podem fechar =)

ja ta a funcar

Obrigado

Código:
import java.util.Scanner;
public class ex3 {

    public static void main (String [] args) 
    {

        Scanner teclado=new Scanner(System.in);

        System.out.println("Pode introduzir 10 numeros se introduzir o numero '0' o programa para!");

        int i=0,n=1,j=0;
        int [] n1 =new int [10];



        while (j<10 && n!=0)
        {
            System.out.println("Introduza um numero");
            n=teclado.nextInt();    
            n1[j]=n;
            j++;
        }

        int [] pares =new int [j];
        int [] impares =new int [j];


        for (i=0; i<j; i++) 
        {    
            if (n1[i]>0)
            {
                if(n1[i]%2==0)
                    pares[i]=n1[i];        
                else    
                    impares[i]=n1[i];
            }
        }

        System.out.print("Pares:");
        for (i=0; i<pares.length; i++)
        {
            if (pares[i]!=0)
            System.out.print(" "+pares[i]);
        }
        System.out.println("");
        System.out.print("Impares:");
        for (i=0; i<impares.length; i++)
        {
            if (impares[i]!=0)
            System.out.print(" "+impares[i]);
        }

    }

}

Então e os numeros negativos, não são pares nem impares?
 
so uma coisa eu fiz isto por metdos ta igual mas so um pormenor na saida quando metemos por exemplo 2 2 0 para parar aparece k os 2 sao pares mas aparece a palavra Impares... como eu faço para nao aparecer é um bocado estupido mas ajuda por favor!
 
Back
Topo