Escreva um programa que pergunte ao usuário quantos alunos tem na sala dele.
Em seguida, através de um laço while, pede ao usuário para que entre com as notas de todos os alunos da sala, um por vez.
conseguir fazer com que o programa pergunte o numero de alunos, e depois faça você digitar cada nota dele(inicialmente não usei array), depois que fiz isso pensei em usar arrays para salvar as notas dos alunos, mas não estou sabendo utilizar para que o programa receba cada nota e salve no array.
eu sou novo nesse site e na programação
Só quero uma resposta de como eu faço para eu digitar cada nota e ela salvar no array
R
RoinujNosde
Põe essa declaração fora do while, desse jeito ele está sendo recriado a cada iteração.
C
Chagas823
fiz isso
e deu esse erro
Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: Index 4 out of bounds for length 4
at MediaAlunosWhile.main(MediaAlunosWhile.java:16)
acredito que ele esteja dizendo que está dando erro na linha 16 que é
x[i] = sc1.nextInt();
Z
Zeca_Peteca1 like
A exceção ArrayIndexOutOfBounds indica que você tentou acessar uma posição inexistente no Array.
No seu código, você está atribuindo à variávei i o número de alunos que o usuário digitou no programa
nesse caso, i era igual à 4.
Você tem que lembrar que as posições de um Array começam sendo contadas do zero, ou seja, a ultima posição de um Array com 4 posições é 3.
Arraycom4posições[0][1][2][3]<--Aultimaposiçãoé3
Você recebeu esse erro por tentar acessar a posição 4, e ela não existe nesse Array
R
RoinujNosde1 like
Mexendo com arrays, é mais comum usar um for do que um while, veja:
Scannersc1=newScanner(System.in);System.out.println(“Quantosalunostemnaclasse?”);inttamanho=sc1.nextInt();//tamanho é um nome mais descritivo que iint[]notas=newint[tamanho];//iterando de 0 até a última posição do arrayfor(inti=0;i<notas.length;i++){System.out.println("Digite uma nota:");notas[i]=sc1.nextInt();}