⚙️ C++

Operações Aritméticas em C++

O que é isso e para que serve?

Imagine que você é um caixa em uma loja. Chegam clientes, você soma os preços dos produtos, subtrai descontos, multiplica a quantidade pelo valor, divide o total entre amigos. Tudo isso são operações aritméticas. Na programação, elas funcionam exatamente da mesma forma: o computador sabe somar, subtrair, multiplicar e dividir números. Sem isso, não é possível escrever uma calculadora, um jogo ou um programa para calcular salários.

Por que saber disso? Mesmo que você queira fazer um programa simples que pergunte a idade do usuário e diga quantos anos faltam para a aposentadoria — você precisará de subtração. Quer calcular quantas pizzas são necessárias para uma festa? Precisa de divisão. E se você está escrevendo um jogo onde o personagem se move — lá é só adição e subtração de coordenadas. Resumindo, a aritmética é a base, sem a qual não se vai a lugar nenhum.

Sintaxe e exemplos de código

Em C++, as operações aritméticas são quase como na matemática. Aqui estão os sinais principais:

  • + — adição
  • - — subtração
  • * — multiplicação (asterisco, não um 'x')
  • / — divisão (barra)
  • % — resto da divisão (por exemplo, 7 % 3 = 1, porque 7 dividido por 3 tem resto 1)

Vamos ver alguns exemplos. Escrevemos o código dentro de main() e mostramos os resultados na tela com cout.

#include <iostream>
using namespace std;

int main() {
    // Exemplo 1: Adição
    int a = 10;
    int b = 5;
    int sum = a + b;  // somamos a e b, colocamos o resultado em sum
    cout << "Soma: " << sum << endl;  // imprime: Soma: 15

    // Exemplo 2: Subtração
    int diff = a - b;  // subtraímos b de a
    cout << "Diferença: " << diff << endl;  // imprime: Diferença: 5

    // Exemplo 3: Multiplicação
    int prod = a * b;  // multiplicamos a por b
    cout << "Produto: " << prod << endl;  // imprime: Produto: 50

    // Exemplo 4: Divisão
    int quot = a / b;  // dividimos a por b
    cout << "Quociente: " << quot << endl;  // imprime: Quociente: 2
    // Atenção: se os números são inteiros, o resultado também é inteiro! 10 / 3 = 3, e não 3.333

    // Exemplo 5: Resto da divisão
    int rem = 10 % 3;  // 10 dividido por 3, resto 1
    cout << "Resto: " << rem << endl;  // imprime: Resto: 1

    return 0;
}

Observe: no exemplo 4, dividimos 10 por 5 e obtivemos 2. Mas se tivéssemos dividido 10 por 3, teríamos obtido 3, e não 3.333. Isso porque int são números inteiros, a parte fracionária é descartada. Para obter um resultado fracionário, precisamos usar double (números com ponto flutuante).

#include <iostream>
using namespace std;

int main() {
    // Exemplo com números fracionários
    double x = 10.0;
    double y = 3.0;
    double result = x / y;  // agora a divisão será precisa
    cout << "Resultado: " << result << endl;  // imprime: Resultado: 3.33333

    // Podemos misturar inteiros e fracionários
    int apples = 7;
    double price = 2.5;
    double total = apples * price;  // 7 * 2.5 = 17.5
    cout << "Custo total: " << total << endl;

    return 0;
}

Outro ponto importante: a ordem das operações. Como na matemática, primeiro multiplicação e divisão, depois adição e subtração. Se quiser mudar a ordem, use parênteses.

#include <iostream>
using namespace std;

int main() {
    int a = 2;
    int b = 3;
    int c = 4;

    // Sem parênteses: primeiro multiplicação, depois adição
    int res1 = a + b * c;  // 2 + 12 = 14
    cout << "Sem parênteses: " << res1 << endl;

    // Com parênteses: primeiro adição, depois multiplicação
    int res2 = (a + b) * c;  // 5 * 4 = 20
    cout << "Com parênteses: " << res2 << endl;

    return 0;
}

Comparação com Python

Se você já experimentou Python, notará que a aritmética é muito parecida. Mas há algumas diferenças.

Em Python:

  • Mesma adição +, subtração -, multiplicação *, divisão /.
  • Mas a divisão em Python sempre dá um resultado fracionário! 10 / 3 será 3.3333, mesmo que os números sejam inteiros.
  • Para obter a divisão inteira (como em C++), você precisa escrever // (duas barras). Por exemplo, 10 // 3 resulta em 3.
  • O resto da divisão também é %, como em C++.

Aqui está como o mesmo código fica em Python:

# Python
a = 10
b = 3

# Divisão normal - fracionária
print(a / b)  # 3.3333333333333335

# Divisão inteira (como em C++)
print(a // b)  # 3

# Resto
print(a % b)  # 1

# Todo o resto é igual
print(a + b)  # 13
print(a - b)  # 7
print(a * b)  # 30

A principal diferença: em C++, você precisa declarar o tipo da variável antecipadamente (int ou double), enquanto em Python os tipos são inferidos automaticamente. Mas em C++, você decide se quer um número inteiro ou fracionário — isso dá mais controle.

Erros típicos de iniciantes

Aqui estão os problemas mais comuns para quem está começando:

  1. Esqueceu o ponto e vírgula — em C++, cada comando termina com ;. Se faltar, o compilador reclama.
  2. Confunde = e == — = é atribuição (colocar um valor), e == é comparação (é igual?). Em aritmética, usamos apenas =.
  3. Divide números inteiros e espera um resultado fracionário — se ambos os números são int, o resultado também será int. Quer um resultado fracionário? Torne pelo menos um número double.
  4. Esquece a ordem das operações — 2 + 3 * 4 é 14, não 20. Use parênteses se tiver dúvidas.
  5. Divide por zero — não se pode dividir por zero! O programa falhará com um erro. Sempre verifique se o divisor não é zero.