Escreva um algoritmo em java que leia um valor inteiro S. Seu algoritmo deve esperar que S seja 1 ou 2, para indicar o sexo de um usuário. Caso seja digitado 1 o usuário foi identificado como FEMININO. Caso seja 2, MASCULINO. Para qualquer outra opção seu programa deve continuar lendo, e assim sucessivamente até que um valor valido (1 ou 2) seja digitado.
Ao final do processo o algoritmo deve apresentar o sexo inserido e a quantidade de inserções erradas, conforme exemplos abaixo:
Observação, N é um número natural, tal que -1000 <= S <= 1000.
Para S = 1, FEMININO, para S = 2, MASCULINO.
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Scanner leia = new Scanner(System.in);
int s, cont =0 ;
s = leia.nextInt();
cont++;
while (s != 1 && s != 2 ) {
s = leia.nextInt();
}
if (s ==1) {
System.out.println("FEMININO");
}
else {
System.out.print("MASCULINO");
}
@Pereirinha_1, o sr. parece ter dificuldade em esclarecer dúvidas, cara.
Vamos lá, você tá com a lógica errada.
Se o usuário digitar 1 ou 2, são opções válidas. Ou seja, qualquer coisa diferente de 1 ou 2 deverá ser contabilizado como opção errada. No final, se ele digitar 1 ou 2, serão impressas duas coisas: “Masculino/Feminino” e o número de entradas erradas.
Vou te ajudar mais uma vez por que você realmente parece iniciante. Espero que entenda a lógica e continue estudando, se ficar empacado no mesmo lugar pra sempre nunca vai conseguir evoluir.
public static void main(String[] args) {
Scanner leia = new Scanner(System.in);
int S=0, N = 0;
while (S != 1 && S != 2) {
S = leia.nextInt();
N++;
}
if (S == 1) {
System.out.println("FEMININO!");
} else if (S == 2){
System.out.print("MASCULINO!");
}
System.out.print("\nEntradas erradas: "+N);
}