Laços For em C++ Explicados: Sintaxe, Fluxo e Exemplos Práticos
O que é um Laço For?
Um laço for é uma estrutura de controle que repete um bloco de código um número predeterminado de vezes. Ele avalia uma condição antes de cada iteração; se a condição for true, o corpo do laço executa, caso contrário o laço termina imediatamente.
Neste tutorial você descobrirá:
- O conceito central de um laço for
- Como um laço for executa internamente
- Quando escolher um laço for sobre outras construções
- A sintaxe oficial
- Dois exemplos ilustrativos
Como um Laço For Executa
O fluxo de execução é melhor visualizado no diagrama abaixo.
Nota: Diagrama de fluxo omitido nesta versão otimizada.
Passo a passo:
- O compilador avalia a inicialização uma vez quando o laço inicia.
- A condição é verificada.
- Se true, o corpo do laço executa; então a expressão de incremento atualiza a variável do laço.
- O controle volta ao passo 2. O laço continua até a condição tornar-se false.
- Quando false é encontrado, o laço sai e a execução continua após o corpo do laço.
Nota: A condição é reavaliada após cada iteração, permitindo que a variável do laço mude a cada ciclo.
Quando Usar um Laço For?
Use um laço for quando:
- Você sabe o número exato de iterações antecipadamente.
- Você precisa de controle rigoroso sobre o contador do laço e sua lógica de atualização.
Sintaxe do Laço For
for (inicialização; condição; incremento) {
// instruções
}
Cada parte desempenha um papel específico:
- Inicialização: Executada uma vez; declara e define o contador do laço.
- Condição: Avaliada antes de cada iteração; se
false, o laço termina. - Incremento: Executa após o corpo do laço; atualiza o contador.
- O corpo executa apenas quando a condição é
true.
Exemplo 1: Contagem Básica
#include <iostream>
using namespace std;
int main() {
for (int x = 0; x < 5; x = x + 1) {
cout << "X é: " << x << endl;
}
return 0;
}
Saída:
X é: 0
X é: 1
X é: 2
X é: 3
X é: 4
Análise do código:
- Inclui
<iostream>para acessar I/O de console. - Usa o namespace
stdpara conveniência. - Define
main()como ponto de entrada. - Inicializa
xcom 0; laço enquantox < 5; incrementaxcada ciclo. - Imprime o valor atual de
x. - Retorna 0 para indicar execução bem-sucedida.
Exemplo 2: Calculando Fatorial
#include <iostream>
using namespace std;
int main() {
int x, num, fatorial = 1;
cout << "Digite um número positivo: ";
cin >> num;
for (x = 1; x <= num; ++x) {
fatorial *= x;
}
cout << "Fatorial de " << num << " = " << fatorial;
return 0;
}
Saída (para entrada 5):
Fatorial de 5 = 120
Pontos-chave neste programa:
- Solicita ao usuário um inteiro positivo.
- Inicializa
fatorialcom 1. - Laço de 1 a
num, multiplicandofatorialpelo contador a cada iteração. - Exibe o resultado.
Resumo
- Um laço for repete um bloco de código um número definido de vezes.
- O laço continua enquanto a condição permanece
true. - Inicialização declara e define contadores do laço.
- A condição controla a execução do corpo do laço.
- O incremento pode ser omitido ou substituído por ponto e vírgula se nenhuma atualização for necessária.
Linguagem C
- Operadores em C++ Explicados: Tipos, Exemplos e Programas Práticos
- Laço do-while em C++: Sintaxe, Exemplos Práticos e Loops Aninhados
- Dominando Switch-Case em C++: Sintaxe, Uso e Exemplos Práticos
- Dominando Alocação Dinâmica de Arrays em C++: Guia Prático com Exemplos de Código
- Dominando Ponteiros em C++: Conceitos, Exemplos e Aplicações Práticas
- Sobrecarga de Operadores em C++: Guia Prático com Exemplos de Código
- Structs em C++ Explicadas com Exemplo Prático
- Dominando std::map em C++: Guia Completo com Exemplos de Código
- Dominando std::list em C++: Sintaxe, Funções e Exemplos Práticos
- C++ Struct vs Class: Diferenças Principais, Sintaxe e Melhores Casos de Uso