HomeSharpStack
cpp5 min

Operadores e Expressões em C++

Operadores e Expressões em C++

Operadores são símbolos especiais que permitem realizar ações em variáveis e valores. Em C++, usamos operadores para fazer cálculos, comparar números e tomar decisões. Vamos aprender sobre os três tipos principais: aritméticos, de comparação e lógicos.

Operadores Aritméticos

Os operadores aritméticos realizam cálculos matemáticos básicos. São os mais simples e intuitivos:

#include <iostream>
using namespace std;

int main() {
    int a = 10;
    int b = 3;
    
    cout << "Soma: " << (a + b) << endl;      // 13
    cout << "Subtração: " << (a - b) << endl;  // 7
    cout << "Multiplicação: " << (a * b) << endl; // 30
    cout << "Divisão: " << (a / b) << endl;    // 3
    cout << "Resto: " << (a % b) << endl;      // 1
    
    return 0;
}

Os operadores aritméticos são: + (adição), - (subtração), * (multiplicação), / (divisão) e % (resto da divisão). O operador % é especial porque só funciona com números inteiros.

Operadores de Comparação

Operadores de comparação comparam dois valores e retornam verdadeiro (true) ou falso (false). Usamos esses operadores para tomar decisões em nossos programas:

#include <iostream>
using namespace std;

int main() {
    int idade = 18;
    
    cout << "idade == 18: " << (idade == 18) << endl;  // 1 (true)
    cout << "idade != 18: " << (idade != 18) << endl;  // 0 (false)
    cout << "idade > 15: " << (idade > 15) << endl;    // 1 (true)
    cout << "idade < 20: " << (idade < 20) << endl;    // 1 (true)
    cout << "idade >= 18: " << (idade >= 18) << endl;  // 1 (true)
    cout << "idade <= 17: " << (idade <= 17) << endl;  // 0 (false)
    
    return 0;
}

Os operadores de comparação são: == (igual), != (diferente), > (maior), < (menor), >= (maior ou igual) e <= (menor ou igual). Em C++, 1 representa verdadeiro e 0 representa falso.

Operadores Lógicos

Operadores lógicos combinam múltiplas comparações. Eles permitem criar condições mais complexas:

#include <iostream>
using namespace std;

int main() {
    int idade = 25;
    int nota = 7;
    
    // AND (&&) - ambas as condições devem ser verdadeiras
    if (idade >= 18 && nota >= 7) {
        cout << "Aprovado e maior de idade!" << endl;
    }
    
    // OR (||) - pelo menos uma condição deve ser verdadeira
    if (nota < 5 || idade < 18) {
        cout << "Reprovado ou menor de idade" << endl;
    }
    
    // NOT (!) - inverte o resultado
    if (!(nota < 5)) {
        cout << "Nota não é menor que 5" << endl;
    }
    
    return 0;
}

Os operadores lógicos são: && (E lógico), || (OU lógico) e ! (NÃO lógico). O operador && retorna verdadeiro apenas quando ambas as condições são verdadeiras. O operador || retorna verdadeiro quando pelo menos uma condição é verdadeira. O operador ! inverte o resultado de uma condição.

Expressões Práticas

Uma expressão é uma combinação de operadores e valores que produz um resultado. Veja um exemplo prático:

#include <iostream>
using namespace std;

int main() {
    int preco = 100;
    int desconto = 10;
    
    int preco_final = preco - (preco * desconto / 100);
    cout << "Preço final: " << preco_final << endl;  // 90
    
    bool tem_desconto = desconto > 0 && preco > 50;
    cout << "Tem desconto válido: " << tem_desconto << endl;
    
    return 0;
}

Neste exemplo, combinamos operadores aritméticos para calcular o preço final e operadores lógicos para verificar se o desconto é válido.

Key Takeaways

  • Operadores aritméticos (+, -, *, /, %) realizam cálculos matemáticos e são fundamentais para processamento de dados numéricos
  • Operadores de comparação (==, !=, >, <, >=, <=) retornam verdadeiro ou falso e são essenciais para tomar decisões em programas
  • Operadores lógicos (&&, ||, !) combinam múltiplas condições, permitindo criar lógica complexa e controlar o fluxo do programa

Enjoyed this reading?

SharpStack delivers personalized tech readings every day, calibrated to your skill level. 5 minutes a day to stay sharp.

“Stay sharp. At your pace. Everyday.”