2.0 KiB
2.0 KiB
id | title | challengeType | videoUrl | forumTopicId | dashedName |
---|---|---|---|---|---|
56533eb9ac21ba0edf2244db | Introduzir instruções else if | 1 | https://scrimba.com/c/caeJ2hm | 18206 | introducing-else-if-statements |
--description--
Se você tem múltiplas condições que precisam ser resolvidas, você pode encadear as instruções if
junto com instruções else if
.
if (num > 15) {
return "Bigger than 15";
} else if (num < 5) {
return "Smaller than 5";
} else {
return "Between 5 and 15";
}
--instructions--
Converta a lógica para usar instruções else if
.
--hints--
Você deve ter pelo menos duas instruções else
assert(code.match(/else/g).length > 1);
Você deve ter pelo menos duas instruções if
assert(code.match(/if/g).length > 1);
Você deve ter chaves de abertura e fechamento para cada bloco de código de if else
.
assert(
code.match(
/if\s*\((.+)\)\s*\{[\s\S]+\}\s*else\s+if\s*\((.+)\)\s*\{[\s\S]+\}\s*else\s*\{[\s\S]+\s*\}/
)
);
testElseIf(0)
deve retornar a string Smaller than 5
assert(testElseIf(0) === 'Smaller than 5');
testElseIf(5)
deve retornar a string Between 5 and 10
assert(testElseIf(5) === 'Between 5 and 10');
testElseIf(7)
deve retornar a string Between 5 and 10
assert(testElseIf(7) === 'Between 5 and 10');
testElseIf(10)
deve retornar a string Between 5 and 10
assert(testElseIf(10) === 'Between 5 and 10');
testElseIf(12)
deve retornar a string Greater than 10
assert(testElseIf(12) === 'Greater than 10');
--seed--
--seed-contents--
function testElseIf(val) {
if (val > 10) {
return "Greater than 10";
}
if (val < 5) {
return "Smaller than 5";
}
return "Between 5 and 10";
}
testElseIf(7);
--solutions--
function testElseIf(val) {
if(val > 10) {
return "Greater than 10";
} else if(val < 5) {
return "Smaller than 5";
} else {
return "Between 5 and 10";
}
}