Loading [MathJax]/jax/output/HTML-CSS/fonts/TeX/fontdata.js

/ *

Você tem que prever a saída deste programa SEM EXECUTÁ-LO.

Para fazer isso, tente anotar o valor que todas as variáveis ​​assumem

durante cada etapa da execução do programa.

Responda as seguintes questões:

1. Este programa gera um erro. Por quê? (Se você não conseguir encontrar, tente executá-lo).

2. Remova a linha que gera o erro.

3. O que é impresso no console?

4. Quantas vezes "f1" é chamado?

5. Quantas vezes "f2" é chamado?

6. Qual valor o parâmetro "a" assume na primeira chamada "f1"?

7. Qual é o valor da variável externa "a" quando "f1" é chamado pela primeira vez?

* /

 

let x = 2;

let a = 6;

const f1 = function(a, b) {

return a + b;

};

const f2 = function(a, b) {

return a + b + x;

};

console.log(x);

console.log(a);

console.log(b);

for (let i = 0; i < 5; ++i) {

a = a + 1;

if (i % 2 === 0) {

const d = f2(i, x);

console.log(d);

} else {

const e = f1(i, a);

console.log(e);

}

}

/ *

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])

);

#33

welligton costa
Module by welligton costa, updated more than 1 year ago
No tags specified