Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Resolução usando "For" tradicional

const caixas = [12, -1, 8, 0, -5, 3, 7, 14];

let numeroCaixasValidas = 0;

for (let i = 0; i <= caixas.length; i++) {

    if (caixas[i] < 0) {
        console.log(`Caixa danificada, ignorada`);
    } else {
        console.log(`Caixa processada: ${caixas[i]}`);
        numeroCaixasValidas++
    }

    if (numeroCaixasValidas === 5) {
        console.log('Limite de caixas processadas atingido!');
        break;
    }
}
1 resposta
solução!

Olá, José! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de arrays para armazenar os valores das caixas, utilizou muito bem o laço for para percorrer os elementos e ainda compreendeu a importância de aplicar condições para validar e controlar o processamento.

Uma dica interessante para o futuro é ajustar o limite do laço para evitar acessar índices inexistentes. Assim:

const caixas = [12, -1, 8, 0, -5, 3, 7, 14];

let numeroCaixasValidas = 0;

for (let i = 0; i < caixas.length; i++) {
    if (caixas[i] < 0) {
        console.log("Caixa danificada, ignorada");
    } else {
        console.log(`Caixa processada: ${caixas[i]}`);
        numeroCaixasValidas++;
    }

    if (numeroCaixasValidas === 5) {
        console.log("Limite de caixas processadas atingido!");
        break;
    }
}

Isso faz com que o loop percorra apenas índices válidos do array, evitando erros de execução.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!