Tabuada completa
Nested loops são úteis sempre que você precisa percorrer dados em múltiplas dimensões, como planilhas, matrizes ou gerar combinações. Dominar esse padrão evita código repetitivo e permite processar estruturas complexas com poucas linhas.
O PROBLEMA
Exiba tabuada de 1 a 5 completa usando loops aninhados.
EXEMPLO
1 x 1 = 1 ... 5 x 10 = 50
SOBRE O CONCEITO
Um 'for' aninhado coloca um loop dentro do corpo de outro. No exercício, o loop externo (ex: for (let i = 1; i <= 5; i++)) controla o número base, e o interno (ex: for (let j = 1; j <= 10; j++)) controla o multiplicador. O erro comum é usar a mesma variável nos dois loops (ex: ambos com i), o que faz o interno sobrescrever o valor do externo. Outro erro é definir o range errado no interno, como j <= 5, que só exibiria metade da tabuada. Usar nomes diferentes (i e j) e garantir que o interno percorra de 1 a 10 gera a saída correta via template literal: ${i} x ${j} = ${i * j}.
RESOLUÇÃO