Module 34 of 35 · Text
#34
/ *
No início do curso, você trabalhou em equipes para classificar os membros de sua equipe, identificados por
números, em ordem crescente ou decrescente.
Hoje, você aplicará o algoritmo de classificação que usou naquele exercício no código!
Crie uma função chamada sortAges que:
- leva uma matriz de tipos de dados mistos como entrada
- remove quaisquer tipos de dados não numéricos sem usar o método de filtro embutido de javascript
- retorna uma matriz de idades classificadas em ordem crescente
- MODO HARD - sem usar o método de classificação javascript embutido built
Você não precisa se preocupar em fazer esse algoritmo funcionar rápido! A ideia é levar você a
"pense" como um computador e pratique seu conhecimento de JavaScript básico.
* /
function sortAges(arr) {}
/* ======= TESTS - DO NOT MODIFY ===== */
const agesCase1 = [
"?",
100,
"?",
55,
"?",
"?",
45,
"?",
"Sanyia",
66,
"James",
23,
"?",
"Ismeal",
];
const agesCase2 = ["28", 100, 60, 55, "75", "?", "Elamin"];
function arraysEqual(a, b) {
if (a === b) return true;
if (a == null || b == null) return false;
if (a.length != b.length) return false;
for (let i = 0; i < a.length; ++i) {
if (a[i] !== b[i]) return false;
}
return true;
}
function test(test_name, expr) {
let status;
if (expr) {
status = "PASSED";
} else {
status = "FAILED";
}
console.log(`${test_name}: ${status}`);
}
test(
"sortAges function works - case 1",
arraysEqual(sortAges(agesCase1), [23, 45, 55, 66, 100])
);
test(
"sortAges function works - case 2",
arraysEqual(sortAges(agesCase2), [55, 60, 100])
);