Eu não entendo o porque não funciona o codigo

import java.util.Scanner;
Scanner ent = new Scanner(System.in);
int nota1, nota2;
int media;
int aluno;

       System.out.print("Digite o nome do aluno:\n ");
    aluno = ent.nextInt();
        // recebe a 1º nota
        System.out.println("digite sua 1ª nota");
        nota1 = ent.nextInt();
        
        // recebe a 2º nota
        System.out.println("digite sua 2ª nota");
        nota2 = ent.nextInt();
       
        
        // calcula a média
        media = (nota1 + nota2 ) / 2;
        System.out.println("A média do aluno " + aluno + " é " + media);
        
        // mostra a nota do aluno
        if( (media >= 7) && (media <7) ){
            System.out.println(aluno+" foi aprovado ");
        } else if(media < 7){
            System.out.println(aluno+" não foi aprovado ");
        } 
           
}

}

O que não funciona?
Posta o código fonte completo.

O nome do aluno é um número?

eu tenho que trocar para string ??

sim

@melzinha Vc tem que entender os tipos de dados que a linguagem possui e para que serve:

  • String: Serve para armazenar textos, mesmo que sejam letras e/ou números: "Teste", "12345", "numero1234" (repare que as aspas duplas indicam que é uma String)
  • int (ou Integer): Serve para armazenar números apenas
  • long (ou Long): Também serve para números, mas consegue armazenar um número maior do que o int
  • char (ou Character): Armazena um único caractere: 'a', '1' (repare que é usado aspas simples para o tipo char)
  • double (ou Double): Também armazena números, porém permite usar com números quebrados, ou seja, com casas decimais: 1.10, 2.78 (repare que a separação das casas decimais é usando ponto e não vírgula)
1 curtida
if( (media >= 7) && (media <7) )

Tenho a leve impressão que essa condição é impossível até pro Chuck Norris.

1 curtida