Problema em código com arrays

1 resposta
R

Pessoal, estava fazendo um código para treinar arrays, e acabei me enrolando e querendo saber o que fiz de errado... Se alguém puder me ajudar, seria te grande ajuda para o meu aprendizado!

package projetoreaprendendo;
import java.util.Scanner;
public class Exercicio05 {
    public static void main (String [] args){ 
     Scanner input = new Scanner(System.in);
     
     //Quantidade de alunos
     System.out.println("Insira a quantidade de aluno:");
     int i = input.nextInt();
     String[] alunos = new String[i];
     int[][] media = new int [3][i];
     int[] soma = new int [i];
     
     //Nome dos alunos
     System.out.println("Insira os nomes dos alunos:");
     for (int y = 0; y < i; y++){
         System.out.print(y+1 + ") ");
         alunos[y] = input.next();
     }
     
     //Notas dos Alunos
     System.out.println("Informe as notas dos alunos:");
    for (int l = 0; l < i; l++){
    System.out.println(alunos[l] + ":");
      for (int c = 0; c < 3; c++) {
        media[c][l] = input.nextInt();
      }
}
    // Somar as notas
    for (int y = 0; y < i; y++) {
        for (int l = 0; l < i; ++l) {
            for (int c = 0; c < 3; ++c) {
                
                soma[y] += media[c][l];
        }
    }
}
    
    //Mostrar as notas
    System.out.println("As notas dos alunos são: ");
    for (int quantidade = 0; quantidade < i; quantidade++){
        for (int y = 0; y < i; y++){
        System.out.print(alunos[quantidade] + " = " + soma[y] + " ");
        if (soma[y] > 18){
            System.out.println("Aprovado");
        } else {
            System.out.println("Reprovado");
        }
        }
    }
    
    
}
}

Desde já agradeço a todos que responderem!

Problema foi resolvido! O objetivo era informar quantidade de alunos, guardar o nome de cada um e adicionar 3 notas para cada um deles! No final deveria informar o valor da soma e se ele havia sido aprovado ou não!!! Mas passei um bom tempinho tentando acertar isso e consegui! Desculpa ter deixado de colocar o objetivo dele e o que acontecia de errado!!

Código correto:

[spam]
package projetoreaprendendo;
import java.util.Scanner;
public class Exercicio05 {
    public static void main (String [] args){ 
     Scanner input = new Scanner(System.in);
     
     //Quantidade de alunos
     System.out.println("Insira a quantidade de alunos:");
     int i = input.nextInt();
     String[] alunos = new String[i];
     int[][] media = new int [3][i];
     int[] soma = new int [i];
     int[]soma2 = new int[i];

     //Nome dos alunos
     System.out.println("\nInsira os nomes dos alunos:");
     for (int y = 0; y < i; y++){
         System.out.print(y+1 + ") ");
         alunos[y] = input.next();
     }
 
     //Notas dos Alunos
     System.out.println("\nInforme as notas dos alunos:");
    for (int l = 0; l < i; l++){
    System.out.println(alunos[l] + ":");
      for (int c = 0; c < 3; c++) {
        media[c][l] = input.nextInt();
      }
}

    // Somar as notas
for (int v = 0; v < i; v++){
        for (int y = 0; y < 3; y++) {
            soma2[v] += media[y][v];
       }
 }
for (int y = 0; y < i; y++)
soma[y] = soma2[y];

    //Mostrar as notas
   System.out.println("\nAs notas dos alunos são:\n");
    for (int quantidade = 0; quantidade < i; quantidade++){
        System.out.print(alunos[quantidade] + " = " + soma[quantidade] + " ");
        if (soma[quantidade] >= 18 && soma[quantidade] <= 30){
            System.out.println("Aprovado");
        } else if (soma[quantidade] > 30) {
            System.out.println("Typing Error");
        } else {
            System.out.println("Reprovado");
        }
        }
    } 
}
[/spam] Adm pode apagar o tópico!

1 Resposta

ViniGodoy

Se você dissesse qual era o objetivo desse programa e o que acontece de errado, ajuda muito a te ajudar.

Criado 29 de junho de 2014
Ultima resposta 29 de jun. de 2014
Respostas 1
Participantes 2