Ola Gente boa Tarde estou com uma duvida de um algoritmo como faco para fazer um calculo da nota media ponderada segue a formula mp = n1 * 1 + n2 * 2 / (1+2) sendo que se a nota do aluno for igual a 0 o algoritmo nao deve ler a nota, e o mesmo so deverá executar o calculo cujo a nota foi maior que zero eu fiz a formula com o if certinho colocando as duas notas agora como eu faço para o algoritmo para nao ler a nota e ainda assim calcular a nota que for atribuída!
import java.util.Scanner*;
public static void main(String[] args){
Scanner entrada = new Scanner(System.in);
int nota1;
int nota2;
int média;
System.out.println("Insira a nota 1:");
nota1 = entrada.nextInt();
System.out.println("Insira a nota 2:");
nota2 = entrada.nextInt();
média = ((nota1*1) + (nota2*2))/(1+2);
if(nota1 == 0){
média = nota2;
}
if(nota2 == 0){
média = nota1;
}
}
System.out.println(média);
O exemplo postado pelo lcruz funciona bem mas eu faria algumas modificações:
public static void main(String[] args){
// Variáveis do tipo double para poder lançar notas com valores decimais
double nota1;
double nota2;
double media;
Scanner sc = new Scanner(System.in);
System.out.println("Insira a nota 1:");
nota1 = sc.nextDouble();
System.out.println("Insira a nota 2:");
nota2 = sc.nextDouble();
// if...else... para que o sistema não tenha q testar 2 condições depois de calcular a média
if (nota1 == 0) {
media = nota2;
} else if (nota2 == 0) {
media = nota1;
} else {
media = ((nota1*1) + (nota2*2)) / (1+2);
}
System.out.println(media);
}