Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Tenho uma Duvida em um dos Exercícios do mod 3 - Conhecendo Arrays

No exercício o código realmente da certo, porém, minha dúvida é em relaçao ao nao ter nenhum numero negativo no Array. Tentei fazer testes com números baixos como 1,2 e 3 e todos os resultados retornaram que o menor numero dentro do array é 0 que foi o valor dado a variável no início do programa. Alguém consegue me dar uma luz ?

  • Crie uma função que receba uma array de números inteiros e retorne o menor valor e o maior valor da array, no seguinte formato: 'o menor número é X e o maior número é Y'.

const arrMenoresMaiores = [5, 37, 18, 59, 12, -5];

function imprimeMaiorEMenor(arr) {

let maior = 0; let menor = 0;

for(let i = 0; i < arr.length; i++) { if (arr[i] > maior) { maior = arr[i] } if (arr[i] < menor) { menor = arr[i] } } return o maior número é ${maior} e o menor número é ${menor}; }

console.log(imprimeMaiorEMenor(arrMenoresMaiores));

2 respostas
solução!

Boa noite, Hudson. Acredito que para resolver esse problema, basta na hora de inicializar as variáveis "maior" e "menor", você atribuir o valor do primeiro elemento do array as duas.

const arrMenoresMaiores = [3, 1, 2, 4];

function imprimeMaiorEMenor(arr) {
  let maior = arr[0];
  let menor = arr[0];

  for (let i = 0; i < arr.length; i++) {
    if (arr[i] > maior) {
      maior = arr[i];
    }
    if (arr[i] < menor) {
      menor = arr[i];
    }
  }

  return `o maior número é ${maior} e o menor número é ${menor}`;
}

Testei com os valores baixos que você falou e sem números negativos e funcionou. Espero ter ajudado

Obrigado Adriano!