Olá pessoal, estou com duvida neste exercício, a minha duvida é pq a variável “alunos” foi guardado dentro de um vetor tipo String e logo em seguida é guardado em outra variável, o código funciona, porem eu não entendi essa estrutura, para min eu deveria criar uma estrutura para o nome e para as notas dos alunos porem o “numero de alunos” foi guardado nas duas variáveis, se alguém puder esclarecer por que isso é necessário eu agradeceria (a parte q está como comentário é o enunciado do exercício)
import java.util.Scanner;
public class vetor_Again {
public static void main(String[] args) {
/*
Leia um conjunto de alunos, cada uma com o nome e a nota.
Em seguida exiba o nome dos alunos que possuem
a nota maior do que a média da turma
*/
Scanner tec = new Scanner(System.in);
int alunos;
double total=0, media;
System.out.println("Digite o numero de alunos: ");
alunos = tec.nextInt();
String[] nome = new String[alunos];
int[] nota = new int[alunos];
for(int i=0;i<alunos;i++){
System.out.println("Digite o nome dos aluno "+(i+1));
nome[i] = tec.next();
System.out.println("Digite as nota "+ (i+1));
nota[i] =tec.nextInt();
total = total + nota[i];
}
media = total / alunos;
System.out.println("Total: "+total);
System.out.println("Media: "+media);
}
Para cada aluno, tu vai precisar de uma respectiva nota, correto? Então, é preciso que os dois vetores, tanto o do tipo String (nome) e inteiro (nota) tenha a mesma capacidade de inserção de dados, pois toda vez que tu inserir aluno de nome fulano no vetor de nomes, terá que inserir sua respectiva nota.
A variável int alunos também é utilizada para questionar ao usuário quantos dados de alunos serão inseridos no sistema [alocados nos vetores nome e nota], por esse motivo ela se faz necessária ser alocada para definir o tamanho desses dois vetores.
Olá, obrigado pela resposta, mas ainda não ficou claro para mim, quando eu coloco a variável alunos q é do tipo int no vetor tipo String n era supostamente para ocorrer um erro de tipos incompatíveis ? ainda estou confuso na estrutura desses vetores recebendo a variável “alunos”
Boa tarde Giiovanni!!
Sou um iniciante em Java, espero ter entendido sua dúvida.
No caso a variável alunos esta fornecendo ao vetor a quantidade de elementos que o vetor precisa.
Por exemplo: se você fosse inserir 10 alunos, seu vetor precisaria ter capacidade para 10 elementos. Então ficaria assim:
String[] nome = new String[10];
int[] nota = new int[10];
Mas no seu caso você esta trocando pela variável alunos, que obrigatoriamente deve ser tipo int, pois você esta indicando o número de elementos que o vetor precisa