Clique sobre os tópicos listados abaixo para navegar até o conteúdo desejado.

  1. Comando if
  2. Comando if-else
  3. Comando if-else-if
  4. Comando if ternário
  5. Comando aninhados

A linguagem de programação C++ fornece os comandos de decisão if, if-else, if-else-if e if ternário. Nesta parte do tutorial vamos aprender esses comandos.

O conceito de comandos de decisão foram discutidos em Portugol: Comandos de Decisão e C Básico: Comandos de decisão. A leitura é recomendada em caso de dúvida.

A linguagem C++ possui o comando if que permite que façamos validações para a execução de um trecho de código de acordo com uma ou mais verificações feitas pelo comando. Fluxograma e sintaxe seguem abaixo:

Fluxograma e sintaxe seguem abaixo:

Fig. 1: Comando if
Sintaxe
if (condicoes)
{
  //seu código aqui
}

O bloco condicoes pode conter mais de uma condição utilizando os operadores lógicos e relacionais , por exemplo.

Exemplo 1
#include <iostream>
using namespace std;

int main()
{
    if ( 1 > 0)
    {
        cout << "1 > 0";
    }
    return 0;
}
Saída
1 > 0

Quando o trecho de código contido no corpo do comando if for apenas uma linha, o uso de { e } é opcional. Como boa prática, sempre utilizar { e } para melhor legibilidade do código e para evitar erros na compilação.

Exemplo 2
#include <iostream>
using namespace std;

int main()
{
    if ( 1 > 0)
        cout << "1 > 0";
    return 0;
}
Saída
1 > 0

No exemplo anterior, ao validar uma condição executamos um trecho de código caso a condição seja verdadeira. Caso seja necessário executar um trecho de código quanto uma condição for falsa, utilizamos o comando if-else.

Fluxograma e sintaxe seguem abaixo:

Fig. 2: Comando if-else
Sintaxe
if (condicoes)
{
  //se condicao == true
  //trecho de código será executado
}
else
{
  //se condicao == false
  //trecho de código será executado
}
Exemplo 3
#include <iostream>
using namespace std;

int main ()
{

    if (1 > 0)
    {
      cout << "ok";
    }
    else
    {
        cout << "não ok";
    }
        
    return 0;
}

Saída
ok

Quando o trecho de código contido no corpo do comando if-else for apenas uma linha, o uso de { e } é opcional.

Exemplo 4
#include <iostream>
using namespace std;

int main ()
{
    if (1 > 0)
      cout << "ok";
    else
      cout << "não ok";
        
    return 0;
}
Saída
ok

Por boa prática, sempre utilize { e } para melhor legibilidade do código e para evitar erros na compilação.

Quando é necessário realizar validações em cascata, podemos utilizar o comando if-else-if fornecido por C++.

Fluxograma e sintaxe seguem abaixo:

Fig. 3: Comando if-elseif
Sintaxe
if (condicao1)
{
  //se condicao1 == true
  //trecho de código será executado
}
else if (condicao2)
{
  //se condicao2 == true
  //trecho de código será executado
}
else if (condicao3)
{
  //se condicao == true
  //trecho de código será executado
}
else
{
 //condicao1, condicao2, condicao3 == false
 //esse trecho de código será executado
}
Exemplo 5
#include <iostream>
using namespace std;

int main ()
{
    int a= 1;
    if (a == 1) 
    {
        cout << "igual a 1";
    }
    else if( a< 1)
    {
        cout << "igual a 1";
    }
    else 
    {
        cout << "igual a 1";
    }
    return 0;
}
Saída
igual a 1

A linguagem C++ também possui o if ternário da linguagem C. Esse operador é representado pelo operador (?:). Esse if ternário foi discutido em Tutorial C: if ternário com mais detalhes.

Fluxograma e sintaxe seguem abaixo:

Fig. 3: Comando if ternário
Sintaxe
(condicao) ? expressao1 : expressao2;

Caso condicao seja verdadeira, a instrução contida em expressão1 será executada. Sendo condicao seja falsa, a instrução contida em expressao2 será executada.

Esse comando é recomendado para situações em que temos pequenas expressões para retorna de validações para serem executadas, precisando apenas dos comandos if-else.

Exemplo 6
#include <iostream>
using namespace std;

int main ()
{
    int valor = 1;
    (valor > 0) ? cout << "maior" : cout << "menor ou igual";
    return 0;
}

Tanto expressao1 quanto expressao2 podem conter funções ou expressões em seu corpo. O if ternário pode ser utilizado com funções.

Para expressões de comparação simples, com apenas um operador relacional, o uso de parênteses não é obrigatório.

  1. 28/07/2025 - revisão 3 - melhorias/ajustes pontuais e em sintaxes;
  2. 30/09/2024 - revisão 2 - ajustes gramaticais pontuais e outros
  3. 09/02/2024 - revisão 1 - correção em navegação, css, exemplos e erros gramaticais
  4. 30/06/2023 - versão inicial