Escrever um programa que leia o nome e a nota de cada um de 100 alunos de um determinado curso. Determine e imprima as duas maiores notas, junto com nome dos alunos que obtiveram cada uma delas.
Segue meu codigo imprimindo uma das notas maiores e coloquei so tres alunos pra testar.
Minha duvida é:
Como que faço pra trazer a nota juntamente com o aluno?
[code]import javax.swing.JOptionPane;
public class Exercicio12 {
public static void main(String args[]){
//Declaração de Variáveis
String nomeAluno[]= new String[3];
float nota[]= new float[3];
float maior= 0;
//Entrada de Dados do Usuário
for(int i =0;i<3;i++){
nomeAluno[i] = (JOptionPane.showInputDialog("Digite o nome do aluno"));
nota[i] = Float.parseFloat(JOptionPane.showInputDialog("Digite a nota do aluno"));
}
for(int i =0; i<3;i++){
if(nota[i] >= maior){
maior=nota[i];
}
}
System.out.print(maior+""+nomeAluno);
Você pode criar uma classe Aluno que tenha como atributos nome e nota. Dai, ao invés de criar dois vetores, um com nome e outro com nota, você cria apenas um com os alunos.
Sim, a classe Aluno “guarda” dentro dela o nome e a nota de um aluno. Dai, você cria um vetor de alunos e depois descobre as duas maiores notas existentes.
Além disso, costumamos colocar, em Java, nomes de classes com letras maiusculas (Aluno) e atributos com letra minúscula (private double nota; private String nome)
public class Exercicio12 {
public static void main(String args[]){
//Declaração de Variáveis
String nomeAluno[]= new String[3];
float nota[]= new float[3];
float maior= 0;
String nome="";
//Entrada de Dados do Usuário
for(int i =0;i<3;i++){
nomeAluno[i] = (JOptionPane.showInputDialog("Digite o nome do aluno"));
nota[i] = Float.parseFloat(JOptionPane.showInputDialog("Digite a nota do aluno"));
}
for(int i =0; i<3;i++){
if(nota[i] >= maior){
nome=nomeAluno[i];
maior=nota[i];
}
}
System.out.print("O nome do Aluno com a maior é: "+nome+" e a nota é: "+maior);
}
} [/code]