English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C++ if, if...else e if...else aninhado

Neste artigo, você aprenderá a usar diferentes formas de sentenças if..else em C ++Cria sentenças de decisão no programa.

Sentença
Sentença if
Sentença if...else
Sentença if...else aninhada
Operador ternário

C ++ Sentença if

if (testExpression) 
{
   // Sentenças a serem executadas se testExpression for verdadeiro
}

A sentença if avalia testExpression dentro dos parênteses.

Se o resultado da cálculo de testExpression for verdadeiro, executar as sentenças dentro do corpo do if.

Se o resultado da cálculo de testExpression for falso, saltar as sentenças dentro do corpo do if.

Como a sentença if funciona?

Diagrama de fluxo da sentença if

A figura acima descreve o funcionamento da sentença if.

Example1: C ++ Sentença if

// O programa imprime o número inteiro positivo inserido pelo usuário
// Se o usuário inserir um número negativo, pular
 
#include <iostream>
using namespace std;
int main() 
{
    int number;
    cout << "Enter an integer: ";
    cin >> number;
    // Verificar se o número é positivo
    if (number > 0) 
    {
        cout << "Você digitou um número inteiro: " << number << endl;
    }
    cout << "Esta sentença é sempre executada.";
    return 0;
}

Saída1

Enter an integer: 5
Você digitou um número inteiro positivo: 5
Esta sentença é sempre executada.

Saída2

Enter an integer: -5
Esta sentença é sempre executada.

C ++ Sentença if...else

Se a expressão de teste (test Expression) for verdadeira, o código dentro do corpo do if...else é executado e o código dentro do corpo else é saltado.

If the test expression (test Expression) is false, the code in the else statement body is executed, and the code in the if body is skipped.

How does the if...else statement work?

Flowchart of if...else

Example2: C ++ if...else statement

//The program checks if the integer is positive or negative
//The program considers 0 as a positive number
#include <iostream>
using namespace std;
int main() 
{
    int number;
    cout << "Enter an integer: ";
    cin >> number;
    if (number >= 0)
    {
        cout << "You entered a positive integer: " << number << endl;
    }
    
    else
    {
        cout << "You entered a negative integer: " << number << endl;
    }
    cout << "This line is always printed.";
    return 0;
}

Resultados de Saída

Enter an integer: -4
You entered a negative integer: -4.
This line is always printed.

C ++ Nested if...else statements

The if...else statement executes two different pieces of code depending on whether the test expression (Test expression) is true or false. Sometimes, you must choose from more than two possibilities.

Using nested if...else statements, you can check multiple test expressions (Test expression) and execute different code for more than two conditions.

This means you can use another if or else if statement inside a if or else if statement.

Syntax of nested if...else

if (testExpression1) 
{
   // If testExpression1The statement to be executed if true
}
else if (testExpression2) 
{
   // If testExpression1The statement to be executed if false, testExpression2The statement to be executed if true
}
else{
    if (testExpression 3) 
    {
       // If testExpression1and testExpression2The statement to be executed if false, testExpression3The statement to be executed if true
    }
    else 
    {
       // The statement to be executed if all test expressions are false
    }
}

Example3: C ++ Nested if...else

// The program checks if an integer is positive, negative, or zero
#include <iostream>
using namespace std;
int main() 
{
    int number;
    cout << "Enter an integer: ";
    cin >> number;
    if (number > 0)
    {
        cout << "You entered a positive integer: " << number << endl;
    }
    else
    {
        if (number < 0)
            {
                cout << "You entered a negative integer: " << number << endl;
            }
             cout << "You entered 0." << endl;
        }
    }
    cout << "This line is always printed.";
    return 0;
}

Resultados de Saída

Insira um inteiro: 0
Você digitou 0.
Esta linha sempre será impressa.

Condição/Operador ternário (?:)

Operador ternário para3uma operação entre dois operandos, que pode ser usada para substituir a sentença if...else.

O código if a seguir:

if ( a < b ) {
   a = b;
}
else {
   a = -b;
}

Você pode substituir o código acima usando o operador ternário:

a = (a < b) ? b : -b;

O operador ternário é mais curto e legível do que a sentença condicional if...else.