public void idade(){
String nomeA, nomeB;
double idadeA, idadeB;
System.out.print("Digite o primeiro nome:");
nomeA = ler.next();
System.out.println("Digite o segundo nome:");
nomeB = ler.next();
System.out.println("Digite a idade da primeira pessoa: ");
idadeA = ler.nextDouble();
System.out.println("Digite a idade da segunda pessoa: ");
idadeB = ler.nextDouble();
double media = (idadeA + idadeB)/2;
System.out.printf("A idade média de %5 e %5 é de %f anos. ", nomeA, nomeB, media);
}
Eu não consigo entender porque no fim está dizendo que não é possível efetuar cálculo, apesar que eu consigo colocar os nomes e as idades. Poderia me ajudar?
Seu System.out.printf está errado, tente isso:
import java.util.Scanner;
public class Test {
public void idade() {
String nomeA, nomeB;
double idadeA, idadeB;
Scanner ler = new Scanner(System.in);
System.out.println("Digite o primeiro nome:");
nomeA = ler.next();
System.out.println("Digite o segundo nome:");
nomeB = ler.next();
System.out.println("Digite a idade da primeira pessoa: ");
idadeA = ler.nextDouble();
System.out.println("Digite a idade da segunda pessoa: ");
idadeB = ler.nextDouble();
double media = (idadeA + idadeB)/2;
System.out.printf("A idade média de %s e %s é de %f anos. ", nomeA, nomeB, media);
ler.close();
}
public static void main(String[] args) {
new Test().idade();
}
}
Para String voce usa o %s.
Para numeros voce usa o %f, se quiser limitar as casas decimais pode colocar assim: “%.2f”, onde o 2 seria a quantidade de casas depois do ponto.
1 curtida
@heycristhian Opaa, obrigadaa, deu certo!!
Nem tinha notado JSKSMSMSMS.
Aproveitando a oportunidade, saberia me dizer como faço pra colocar tipo uma pergunta “deseja continuar? S/N”?
1 curtida
Ve se te ajuda. Para isso, voce pode usar o do… while. Ele executa primeiro o código e em seguida ele faz a condicão. Se a condição retornar true, ele repete o código, caso contrário ele sai do laço:
import java.util.Scanner;
public class Test {
public void idade() {
Scanner ler = new Scanner(System.in);
String resposta = "";
do {
String nomeA, nomeB;
double idadeA, idadeB;
System.out.println("Digite o primeiro nome:");
nomeA = ler.next();
System.out.println("Digite o segundo nome:");
nomeB = ler.next();
System.out.println("Digite a idade da primeira pessoa: ");
idadeA = ler.nextDouble();
System.out.println("Digite a idade da segunda pessoa: ");
idadeB = ler.nextDouble();
double media = (idadeA + idadeB) / 2;
System.out.printf("A idade média de %s e %s é de %.0f anos. ", nomeA, nomeB, media);
System.out.println();
System.out.println();
System.out.println("Deseja continuar?");
resposta = ler.next();
} while (resposta.equalsIgnoreCase("sim"));
ler.close();
}
public static void main(String[] args) {
new Test().idade();
}
}
1 curtida
@heycristhian Muitoo obrigadaa, realmente me ajudou!! ![:blush: :blush:](https://www.guj.com.br/images/emoji/twitter/blush.png?v=9)
1 curtida