oi gente, sou iniciante e estou com dificuldade pra desenvolver esse algoritmo, que na verdade é um código rápido, se alguém puder me ajudar…
Escreva um programa que solicite a entrada de uma string e identifique quando foi digitado “sim” (com qualquer tipo de letras, maiúsculas ou minúsculas) e pare quando o usuário digitar “não”.
Coloque o código dentro de um while.
Pegue a entrada com um Scanner.
Compare a entrada com equalsIgnoreCase, ex.:
String entrada = //inicialize
if (entrada.equalsIgnoreCase("sim")) {
//Digitou sim
} else if (entrada.equalsIgnoreCase("não")) {
//Digitou não
} else {
//Digitou qualquer outra coisa
}
Ou então pode-se utilizar o Switch:
String entrada = //inicialize
Switch(entrada){
case "Sim":
//caso for Sim ele executará isto
break;
case "Não":
//Caso for Não ele executará isto
break;
default:
//Qualquer outro valor que não foi definido na verificação
break;
}
Aí não pegaria “sim” ou “'não”. (case diferente)
Nada que um .toUpperCase() na string não resolva…
Switch(entrada.toUpperCase())
Acho em caso de vários IF/ELSE o switch uma forma muito mais organizada e clean de se trabalhar múltiplas condições.
Eu sei que não foi isso que ela perguntou, mas apenas por curiosidade:
Como vocês fariam se mantivesse a entrada aberta (o usuário vai digitando em tempo real, sem apertar enter), e o código testando em tempo real se os três últimos caracteres são “não”?
Obrigado.
Muito interessante. Obrigado.
1 curtida