Eu tentei fazer meu primeiro código com o uso do try/catch (já que estou apenas começando na programação em java) e queria saber pq na linha 9 está ocorrendo um erro...
O objetivo do programa é inserir a quantidade de alunos de uma suposta sala, registrar seus nomes e depois atribuir nota à eles! O problema, é que eu gostaria de corrigir para se a pessoa digitar uma letra, digitar '0' ou digitar um número float ou double!
O código é o seguinte:
[quote]public class Aula10 {
public static void main(String[] args){
Scanner input = new Scanner (System.in);
//Quantidade de alunos
String ii;
try{
ii = JOptionPane.showInputDialog(null,"Digite a quantidade de alunos:");
} catch(NumberFormatException e){
JOptionPane.showMessageDialog(null,"O número deve ser inteiro","Alunos",2);
System.exit(0);
}
int i = Integer.parseInt(ii);
String[] alunos = new String[i];
int[][] media = new int [3][i];
int[] soma = new int [i];
int[]soma2 = new int[i];
//
//Nome dos alunos
for (int y = 0; y < i; y++){
alunos[y] = JOptionPane.showInputDialog(null, y+1 + ") Nome: ", "Registro",1);
}
//Notas dos Alunos
JOptionPane.showMessageDialog(null,"Informe as 3 notas do trimestre dos alunos","Alunos",2);
for (int l = 0; l < i; l++){
JOptionPane.showMessageDialog(null,alunos[l]);
for (int c = 0; c < 3; c++) {
int localizador = c + 1;
String[][] media2 = new String[3][i];
media2[c][l] = JOptionPane.showInputDialog(null, "Nota " + localizador + ":");
media[c][l] = Integer.parseInt(media2[c][l]);
}
}
// 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
JOptionPane.showMessageDialog(null,"As notas dos alunos são: ");
for (int quantidade = 0; quantidade < i; quantidade++){
if (soma[quantidade] >= 18 && soma[quantidade] <= 30){
JOptionPane.showMessageDialog(null,alunos[quantidade] + " = " + soma[quantidade] + " Aprovado");
} else if (soma[quantidade] > 30) {
JOptionPane.showMessageDialog(null,alunos[quantidade] + " = " + soma[quantidade] + " Typing Error");
} else {
JOptionPane.showMessageDialog(null,alunos[quantidade] + " = " + soma[quantidade] + " Reprovado");
}
}
}
}[/quote]