Estou estudando sozinho programação e por isso agradeço quem pode me ajudar.
No javascprit eu consigo usar FUNÇÃO e IF ao mesmo tempo ?
Por exemplo:
function sexo (masculino) {
if (imc <= 20.7){
mostra ("Você está abaixo do peso ideal.")
}
if (imc >=20.7 && imc <=26.4){
mostra ("Você está no peso ideal.")
}
if (imc >=26.7 && imc<=27.8){
mostra ("Você está um pouco acima do peso.")
}
if (imc >= 27.8 && imc <=31.1){
mostra ("Você está acima do peso.")
}
if (imc >= 31.3) {
mostra ("Você está obeso.")
}
}
E por que não conseguiria? Uma função é “apenas” uma sequência de comandos que pode ser reaproveitada (resumindo bem porcamente). E dentro dela você pode ter qualquer código válido.
Mas só pra constar, sua função não faz sentido. Ela se chama sexo, recebe um parâmetro chamado masculino, mas o código dela verifica o IMC, o que é bem confuso. O parâmetro masculino não está sendo usado pra nada, e de onde vem o IMC? Ele também deveria ser um parâmetro.
Sem contar que se o IMC for exatamente 20.7 ele entra em dois if's (no abaixo do peso e no peso ideal).
Enfim, usando os mesmos valores, a ideia seria fazer algo assim:
function mostraResultado(imc) {
if (imc <= 20.7) {
mostra ("Você está abaixo do peso ideal.")
} else if (imc <= 26.4) {
mostra ("Você está no peso ideal.")
} else if (imc <= 27.8) {
mostra ("Você está um pouco acima do peso.")
} else if (imc <= 31.1) {
mostra ("Você está acima do peso.")
} else {
mostra ("Você está obeso.")
}
}
Repare que não precisa testar o mesmo valor duas vezes. Se o IMC for menor ou igual a 20,7 ele entra no primeiro if. Se não entrou nesse if é porque é maior, então não precisa testar isso de novo no else.
Depois, se for menor ou igual a 26,4 vai entrar no segundo if. Se não entrar ali é porque é maior e não precisa testar de novo no próximo e assim por diante.
Se não entrar em nenhum if é porque é maior que 31,1 e entra no último else.
Cara. VALEU MESMO !!!
Entendi e ficou muito mais claro o que é FUNÇÃO.
Já li umas 03 vezes para gravar a ideia de como usar função.
Excelente sua explicação.