Olá a todos, eu percebi um problema com o código proposto na resolução do exercício 4 e tentei uma solução, adoraria ouvir a opinião de vocês.
Acontece que como o código está escrito originalmente, se seu Array não tiver nenhum numero menor que 0, o valor da variável 'menor' nunca muda, e o console retorna o menor número como 0 (zero, o valor atribuído por você mesmo a sua variável).
Para resolver esse problema, eu adicionei mais um 'if' ao loop do 'for', para modificar o valor da variável 'menor' para qualquer número do Array, caso ela seja igual a 0.
const numerosInt = [ 4, 5, 67, 12, 23, 3, 45, 67, 13, 90];
function maiorEMenor (arr) {
let maiorInt = 0;
let menorInt = 0;
for (let i = 0; i < arr.length; i++) {
if (arr[i]> maiorInt) {
maiorInt = arr[i];
}
if (arr[i]< menorInt) {
menorInt = arr[i];
}
if (menorInt === 0) {
menorInt = arr[i]
}
}
return `O maior número é ${maiorInt} e o menor é ${menorInt}`
}
console.log(maiorEMenor(numerosInt));
Desta forma, a variável assume um valor existente na array e consegue ser comparado com os outros nas seguintes iterações do looping.