</AULA 03>

Algoritmos e Lógica de Programação

Estruturas de Repetição (Loops)

Portugol
Linguagem C
Python

Para que servem Estruturas de Repetição?

Também conhecidas como Laços ou Loops, essas estruturas permitem executar um bloco de código repetidas vezes enquanto uma condição for verdadeira.

  • Automatizam tarefas repetitivas.
  • Evitam a duplicação de código (escrever a mesma coisa 100x).
  • Essenciais para percorrer dados (vetores, listas).

Fluxo de Repetição

Início Condição? Falso Verd Bloco de Comandos Fim

Estrutura PARA (For) - Laço Contado

Utilizado quando sabemos previamente quantas vezes o código deve ser repetido. Possui inicialização, condição e incremento na mesma linha.

Portugol

Para i de 0 ate 9 passo 1 faca Escreva("Valor: ", i) Fim_para

Linguagem C

for (int i = 0; i < 10; i++) { printf("Valor: %d\n", i); } // 1. Inicializa (int i=0) // 2. Testa (i < 10) // 3. Executa // 4. Incrementa (i++)

Python

for i in range(10): print(f"Valor: {i}") # range(10) gera: # 0, 1, 2... até 9 # O 10 é exclusivo

Estrutura ENQUANTO (While)

Laço Condicional Pré-Testado. A condição é verificada antes de executar. Se a condição for falsa logo no início, o código nunca é executado.

Portugol

i <- 0 Enquanto (i < 10) faca Escreva(i) i <- i + 1 Fim_enquanto

Linguagem C

int i = 0; while (i < 10) { printf("%d\n", i); i++; } // Cuidado com loops // infinitos!

Python

i = 0 while i < 10: print(i) i += 1 # Não existe i++ # em Python

Estrutura FAÇA-ENQUANTO (Do While)

Laço Condicional Pós-Testado. Executa o bloco pelo menos uma vez, pois a condição só é verificada no final.

Portugol

i <- 0 Repita Escreva(i) i <- i + 1 Ate (i >= 10) // Repete ATÉ ser verdade // (Lógica inversa do While)

Linguagem C

int i = 0; do { printf("%d\n", i); i++; } while (i < 10); // Note o ponto e vírgula // no final do while!

Python (Simulado)

# Python não tem do-while # nativo. Simulamos assim: i = 0 while True: print(i) i += 1 if not (i < 10): break

Referências

Entendendo Estrutura de Dados
Marcello La Rocca
Uma abordagem prática para aprender como as estruturas funcionam "por baixo do capô", otimizando seu código.
Ver na Amazon
Algoritmos e Estruturas em C
André Backes
O guia definitivo para dominar C. Explicações claras sobre ponteiros, alocação de memória e estruturas complexas.
Ver na Amazon
Estruturas de Dados e Seus Algoritmos
Jayme L. Szwarcfiter
Clássico brasileiro. Teoria profunda e rigorosa, essencial para entender a matemática e lógica por trás dos algoritmos.
Ver na Amazon
Estruturas de Dados com Python
Dr. Basant Agarwal
Aprenda a implementar estruturas clássicas usando a sintaxe elegante do Python. Ótimo para entrevistas técnicas.
Ver na Amazon