Ajuda em exercício usando vetor [RESOLVIDO]

Boa noite, pessoal.

Estou tentando resolver um exercício de vetores em Java onde preciso:

1-) Criar um programa que consiga ler 5 nomes e cinco notas de uma determinada turma em VETOR.
2-) O programa irá ler, calcular e exibir a média das notas da turma.
3- ) E por fim, será exibido a relação de nomes cuja note é superior a esta média.

Só que estou com um problema na hora em que o programa vai ler o segundo nome e a nota do segundo nome, ou seja, o nome do segundo aluno e a sua nota.

import java.util.Scanner;
public class vetorExercicio4{
public static void main(String[] args){

Scanner input = new Scanner(System.in);

String[] nome = new String[5];
double[] nota = new double[5];
double soma = 0;
double media;
double maior;

for(int i = 0; i < 5; ++i){
    System.out.println("Digite o nome n"+(i+1)+"º : ");
    nome[i] = input.nextLine();
    System.out.println("Digite a nota do nome n"+(i+1)+"º : ");
    nota[i] = input.nextDouble();
    soma = soma + nota[i];
}
   
  media = soma/5;
  
for(int i = 0; i < 5; ++i){
  if(nota[i] > media){
      maior = nota[i];
     System.out.println("O aluno "+nome[i]+" possui média "+maior+", maior que a média "+media);
  }         
}  

}
}

Alguém sabe onde está o erro?

A classe Scanner tem um bug quando se usa métodos para leitura de números (nextDouble, nextInt, nextFloat, etc…) ele não consegue limpar o buffer (pesquise a respeito) e para arrumar a duas formas:

1 -

nota[i] = input.nextDouble();
input.nextLine(); //força a limpeza do buffer...

2 -

nota[i] = Double.parseDouble(input.nextLine()); //converte texto em número...

O primeiro caso é uma gambiarra e o segundo mais elegante mas vai envolver conceitos de Exceções (try/catch etc) e se ainda não pegou esses esquemas, sugiro o primeiro caso apenas para aprendizado

Outra dica, evite montar limite de loop dessa forma…

for(int i = 0; i < 5; ++i){

Use o atributo length (todo vetor possui um depois de criado)

for(int i = 0; i < nota.length; ++i){
...
media = soma/nota.length;

Dessa forma se precisar alterar o tamanho do vetor, não precisará mexer no for…

Agradeço pela ajuda! Consegui resolver!

E valeu pela dica do .length no for, meu professor já tinha comentado sobre isso, mas parece que só com o tempo você começa a perceber que é melhor usá-lo.

Pode postar o código pra ver como ficou?

Olá! Alguém poderia me ajudar com esse programa. Não estou conseguindo resolver.
Desde já agradeço!

Faça um programa que peça ao usuário para informar o tamanho do vetor (quantidade de posições). Em seguida, peça para que o usuário informe valores inteiros que serão inseridos no vetor. Após o vetor ser preenchido, mostre na tela:

  • o conteúdo do vetor
  • o maior elemento do vetor
  • o menor elemento do vetor
  • a média de todos os elementos do vetor
  • o vetor ordenado de forma crescente

@peppa_sad É melhor que tu crie um tópico próprio, do que postar num tópico que está inativo à 1 ano. Vai ser mais fácil do povo ver.

Ah, e não se esqueça de colocar a parte em que está com dúvida. Vlw!