Vetores

Criei um vetor de 10 inteiros; um laço que percorre todo o vetor e imprime os valores pares contidos nesse e seus respectivos índices. Porém, gostaria de imprimir também a quantidade de índices que contêm números pares.

 public class EX4 {
      public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int i;
        int size = 10;
        int a[] = new int[size];
        for(i=0; i<a.length; i++) {
          System.out.print((i+1)+"° valor:");
          a[i] = sc.nextInt ();
        }
        for(i=0; i<a.length; i++) {
          if(a[i] % 2 == 0) {
            System.out.println("a["+(i)+"] = "+(a[i]));
          }
        }
      }
    }

#1 Crie uma variável chamada contador (poderia ser qualquer nome) fora do for.

#2 Dentro do if, acrescente a linha abaixo:

contador++;

#3 No final do main acrescente a seguinte linha:

System.out.printf("Foram encontrados %d números pares", contador);
1 curtida

Ficou assim:

public class EX4 {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    int i;
    int np = 0;
    int size = 10;
    int a[] = new int[size];
    for(i=0; i<a.length; i++) {
      System.out.print("a["+(i)+"] = ");
      a[i] = sc.nextInt ();
    }
    System.out.println();
    for(i=0; i<a.length; i++) {
      if(a[i] % 2 == 0) {
        System.out.println("a["+(i)+"] = "+(a[i]));
      np++;
      }
    }
    System.out.print("\na[] possui "+(np)+" números pares.");
  }
}

Deu certo!
Obrigado pela ajuda. Funcionou perfeitamente. Só precisei também atribuir 0 ao contador para compilar certinho.

1 curtida

É mesmo, até esqueci. Que bom que conseguiu.