Pular para o conteúdoPedro Farbo
Lição 11 / 1640 min

Repetições com Loops

Repetições com Loops

Loops permitem executar código várias vezes sem repetir manualmente. Essencial para automatizar tarefas!

Por que loops?

Sem loop:

javascript
console.log("Olá 1");console.log("Olá 2");console.log("Olá 3");console.log("Olá 4");console.log("Olá 5");// E se fossem 1000?

Com loop:

javascript
for (let i = 1; i <= 5; i++) {    console.log(`Olá ${i}`);}

for - Loop com contador

javascript
for (inicialização; condição; incremento) {    // código a repetir}

Exemplo:

javascript
for (let i = 0; i < 5; i++) {    console.log(`Número: ${i}`);}// Saída: 0, 1, 2, 3, 4

Entendendo cada parte:

javascript
for (let i = 0;  // começa em 0     i < 5;      // enquanto i for menor que 5     i++) {      // incrementa i em 1 após cada loop    console.log(i);}

Contagem regressiva

javascript
for (let i = 10; i >= 0; i--) {    console.log(i);}console.log("🚀 Lançar!");

Pulando números

javascript
// Números pares de 0 a 10for (let i = 0; i <= 10; i += 2) {    console.log(i);}// Saída: 0, 2, 4, 6, 8, 10

while - Loop com condição

javascript
while (condição) {    // código a repetir}

Exemplo:

javascript
let contador = 0; while (contador < 5) {    console.log(`Contador: ${contador}`);    contador++;}

Use while quando não sabe quantas vezes vai repetir:

javascript
let numero = 1; while (numero < 1000) {    numero = numero * 2;    console.log(numero);}// Dobra até passar de 1000

do...while

Executa pelo menos uma vez, depois verifica:

javascript
let i = 0; do {    console.log(i);    i++;} while (i < 5);

Percorrendo Arrays

Com for tradicional

javascript
const frutas = ["maçã", "banana", "laranja"]; for (let i = 0; i < frutas.length; i++) {    console.log(`Fruta ${i}: ${frutas[i]}`);}

Com for...of (mais moderno)

javascript
const frutas = ["maçã", "banana", "laranja"]; for (const fruta of frutas) {    console.log(fruta);}

Com forEach (método de array)

javascript
const frutas = ["maçã", "banana", "laranja"]; frutas.forEach((fruta, indice) => {    console.log(`${indice}: ${fruta}`);});

break e continue

break - sai do loop

javascript
for (let i = 0; i < 10; i++) {    if (i === 5) {        break; // para o loop quando i for 5    }    console.log(i);}// Saída: 0, 1, 2, 3, 4

continue - pula para próxima iteração

javascript
for (let i = 0; i < 10; i++) {    if (i === 5) {        continue; // pula o 5    }    console.log(i);}// Saída: 0, 1, 2, 3, 4, 6, 7, 8, 9

Loops aninhados

Loop dentro de loop:

javascript
// Tabuadafor (let i = 1; i <= 3; i++) {    console.log(`\n--- Tabuada do ${i} ---`);    for (let j = 1; j <= 10; j++) {        console.log(`${i} x ${j} = ${i * j}`);    }}

Exercícios práticos

1. Soma de números

javascript
let soma = 0; for (let i = 1; i <= 100; i++) {    soma += i;} console.log(`Soma de 1 a 100: ${soma}`); // 5050

2. Encontrar número

javascript
const numeros = [10, 25, 33, 47, 52, 68, 71];const procurado = 47;let encontrado = false; for (let i = 0; i < numeros.length; i++) {    if (numeros[i] === procurado) {        console.log(`Encontrado na posição ${i}!`);        encontrado = true;        break;    }} if (!encontrado) {    console.log("Número não encontrado");}

3. Filtrar maiores de idade

javascript
const pessoas = [    { nome: "Ana", idade: 17 },    { nome: "Bruno", idade: 25 },    { nome: "Carla", idade: 16 },    { nome: "Diego", idade: 32 }]; console.log("Maiores de idade:");for (const pessoa of pessoas) {    if (pessoa.idade >= 18) {        console.log(`- ${pessoa.nome} (${pessoa.idade} anos)`);    }}

4. FizzBuzz (clássico de entrevistas!)

javascript
for (let i = 1; i <= 30; i++) {    if (i % 3 === 0 && i % 5 === 0) {        console.log("FizzBuzz");    } else if (i % 3 === 0) {        console.log("Fizz");    } else if (i % 5 === 0) {        console.log("Buzz");    } else {        console.log(i);    }}

Cuidado com loops infinitos!

javascript
// PERIGO! Loop infinito - nunca faça isso!while (true) {    console.log("Infinito!");} // PERIGO! Esqueceu de incrementarlet i = 0;while (i < 5) {    console.log(i);    // Esqueceu i++! Vai rodar para sempre}

Se acontecer, feche a aba do navegador!

Qual loop usar?

SituaçãoLoop recomendado
Sabe quantas vezesfor
Não sabe quantas vezeswhile
Percorrer arrayfor...of ou forEach
Precisa do índicefor tradicional

Resumo

  • for para repetir número conhecido de vezes
  • while para repetir enquanto condição for true
  • for...of para percorrer arrays
  • break para sair do loop
  • continue para pular iteração
  • ✅ Cuidado com loops infinitos!

Na próxima aula, vamos organizar código com funções! 🚀

Gostou do conteúdo? Sua contribuição ajuda a manter tudo online e gratuito!

PIX:0737160d-e98f-4a65-8392-5dba70e7ff3e