inserção de dados em arrays com o método NEXT?

//Importa a classe Scanner, responsável por inserção de dados em variáveis import java.util.Scanner; public class MediaPonderada { public static void main(String args[]) { //Cria o objeto insere da classe Scanner para inserir dados. Scanner insere = new Scanner (System.in); //o tamanho do array int tamanho=3; //cria um Array dados para armazenar as notas e seus pesos double[] notas, pesos = new double[3]; //Criando variáveis de ponto flutuante do tipo Double //A divisao é a soma dos pesos double divisao=0, total=0, dados=0; int ind=0; try { //lembrando que o Array vai de 0 a 2 e não até 3 for (ind=0; ind<tamanho; ind++) { //%.0 especifica no printf zero casas decimais para numeros flutuantes(f) e \n pulo de linha System.out.printf("Digite a %.0f nota: \n",ind); notas[ind]=insere.nextDouble(); System.out.printf("Digite o peso da nota, entre 1 a 5: "); pesos[ind]=insere.nextDouble(); /*usa o objeto insere da classe Scanner junto com a especificação nextDouble(); para inserir dados na variavel. nextDouble() indica que se trata de uma variável de ponto flutuante do tipo Double */ if ((notas[ind]>10)||(notas[ind]<0)) { System.out.println("A nota não pode ser maior do que 10 e nem menor do que zero!"); ind-=1; } else if((pesos[ind]<=0)||(pesos[ind]>5)) { System.out.println("O peso da nota não pode ser menor ou igual a zero e nem superior a 5!"); ind-=1; } } //calculo das notas x pesos / pesos for (ind=0; ind<tamanho; ind++) { total+=notas[ind]*pesos[ind]; divisao+=pesos[ind]; } total/=divisao; //%.2 especifica no printf duas casas decimais para numeros flutuantes(f) e \n pulo de linha System.out.printf("Nota: %.2f\n",total); //verificando a situação if (total<=3.49) System.out.printf("REPROVADO!!!"); else if ((total>3.49)&&(total<=6.49)) System.out.printf("RECUPERACAO!!!"); else System.out.printf("APROVADO!!!"); } catch(NumberFormatException exception) { System.out.println("Digite algo como um número. Ex: 8.5"); ind-=1; } } }

[color=black]Se alguém conseguir solucionar, fico grato.

abrs,[/color]

faz assim:

double[] notas = new double[3]; double[] pesos = new double[3];

abraços.

Faltou inicializar a variável notas

Ps.: se não souber quantas notas vc vai precisar, portanto, com quantos espaços deve usar na array notas, use Collections

[quote=palmadias]faz assim:

double[] notas = new double[3]; double[] pesos = new double[3];

abraços.[/quote]
é isso o que o palmadias disse…mas usa o ArrayList que ai vc so vai fazendo lista.add
sem se preocupar com o tamanho :wink:

[color=black]Obrigado pessoal.
Valeu mesmo.

abrs,[/color]