Módulo 02 — Lógica e Algoritmos • 1º Semestre

Demonstrações práticas e código-fonte completo comentado para fundamentar os conceitos de Linguagem C++: Classes e STL Vector.


🗺️ Fluxo de Execução e Rastreamento

flowchart TD
    OBJ["Objeto ContaBancaria"] --> METODOS["depositar(500) | sacar(200)"] --> SALDO["Saldo: R$ 300,00"]
    
    style OBJ fill:#e1f5fe,stroke:#03a9f4,stroke-width:2px
    style SALDO fill:#e8f5e9,stroke:#4caf50,stroke-width:2px

💻 Código-Fonte Completo e Comentado

Abaixo está a implementação funcional na linguagem cpp.

/*
 * Orientação a Objetos com C++ e Encapsulamento.
 */
#include <iostream>
#include <vector>
#include <string>

class ContaBancaria {
private:
    std::string titular;
    double saldo;

public:
    ContaBancaria(std::string t, double s = 0.0) : titular(t), saldo(s) {}

    void depositar(double valor) {
        saldo += valor;
        std::cout << "[Depósito] R$ " << valor << " realizado. Saldo atual: R$ " << saldo << "
";
    }

    void sacar(double valor) {
        if (valor <= saldo) {
            saldo -= valor;
            std::cout << "[Saque] R$ " << valor << " realizado. Saldo atual: R$ " << saldo << "
";
        }
    }
};

int main() {
    std::cout << "=== ORIENTAÇÃO A OBJETOS EM C++ ===
";
    ContaBancaria conta("Ricardo Leal", 100.0);
    conta.depositar(250.0);
    conta.sacar(120.0);
    return 0;
}

⚙️ Instruções de Compilação e Execução

Para compilar e executar o código acima em seu terminal, utilize o comando:

g++ -Wall -O2 cpp_classes.cpp -o cpp_classes && ./cpp_classes

🖥️ Saída Esperada no Console

Ao executar o programa, o resultado formatado no terminal deve ser exatamente:

=== ORIENTAÇÃO A OBJETOS EM C++ ===
[Depósito] R$ 250 realizado. Saldo atual: R$ 350
[Saque] R$ 120 realizado. Saldo atual: R$ 230