Questão
Durante um projeto de programação, estudantes criaram uma função para sugerir um lanche para os usuários da lanchonete da escola. A ideia é que a sugestão fosse dada se o usuário gostasse de pão ou frutas.
Observe o código desenvolvido:
function sugerirLanche(gostaDePao, gostaDeFrutas) {
if (gostaDePao) {
return "Sanduíche";
} else {
return "Salada de frutas";
}
}
Pensando no objetivo dos estudantes, como esse código pode ser aprimorado para sugerir um lanche sempre que a pessoa gostar de pão ou de frutas? Selecione uma alternativa:
A
if (gostaDePao) {
return "Sem sugestão";
} else {
return "Oferecer lanche";
}
B
if (gostaDePao || gostaDeFrutas) {
return "Oferecer lanche";
} else {
return "Sem sugestão";
}
C
if (gostaDePao || gostaDeFrutas) {
return "Sem sugestão";
} else {
return "Oferecer lanche";
}
D
if (gostaDePao) {
return "Oferecer lanche";
} else {
if (gostaDeFrutas) {
return "Sem sugestão";
}
}
E
if (gostaDePao) {
if (gostaDeFrutas) {
return "Oferecer lanche";
} else {
return "Sem sugestão";
}
}
B
A alternativa B é a correta porque utiliza o operador lógico ||
(ou) para verificar se o usuário gosta de pão ou de frutas. Se qualquer uma das condições for verdadeira, a função retorna "Oferecer lanche", que está alinhado com o objetivo de sugerir um lanche sempre que a pessoa gostar de pão ou de frutas. As outras alternativas não atendem a esse objetivo:
- A) Retorna "Sem sugestão" se gosta de pão, o que não faz sentido.
- C) Retorna "Sem sugestão" se gosta de pão ou frutas, o que é o oposto do desejado.
- D) Não cobre o caso em que gosta de frutas, mas não de pão.
- E) Só oferece lanche se gostar de ambos, o que não atende ao objetivo de gostar de um ou outro.