Nhóm 10 OOP

Pasted Sep 29, 2026, 1:59 PM1 file73 lines

Scan to open on your phone

Point a camera at the QR code - it opens this exact paste, no app needed.

https://codepastes.com/zzgt7tf22ctnpm5s
untitled
#include <iostream>
#include <string>

// Class luu thong tin khach va giao dich
class ThongTin {
public:
    std::string tenKhach;
    double tienCoc;
    double tienThue;  
};

// Class xu ly cho Ben A
class BenA {
public:
    // Kiem tra tien coc va tien thue: coc phai >= tien thue moi du dieu kien
    bool kiemTraTien(ThongTin gd) {
        std::cout << "Kiem tra tien coc = " << gd.tienCoc
                << ", tien thue = " << gd.tienThue << std::endl;

        if (gd.tienCoc <= gd.tienThue) {
            std::cout << "Tien cua quy khach du\n";
            return true;
        } else {
            std::cout << "Tien cua quy khach khong du\n";
            return false;
        }
    }
};

// Class xu ly cho Ben B (ben tro): cap chia khoa cho khach
class BenB {
public:
    void capChiaKhoa(ThongTin gd) {
        std::cout << "Ben B nhan yeu cau -> cap phong cho khach " << gd.tenKhach << std::endl;
    }
};

// Class trung gian: goi kiem tra o Ben A truoc, du dieu kien moi goi Ben B
class TrungGian {
public:
    BenA benA;
    BenB benB;

    void xuLy(ThongTin gd) {
        bool thongTinOk = true;
        bool tienOk = benA.kiemTraTien(gd);

        if (thongTinOk && tienOk) {
            benB.capChiaKhoa(gd);
            std::cout << "Giao dich thanh cong\n";
        } else {
            std::cout << "Giao dich that bai\n";
        }
    }
};

int main() {
    ThongTin gd;

    std::cout << "Nhap ten khach: ";
    std::getline(std::cin, gd.tenKhach);

    std::cout << "Nhap tien coc da dat truoc: ";
    std::cin >> gd.tienCoc;

    std::cout << "Nhap tien thue: ";
    std::cin >> gd.tienThue;

    TrungGian tg;
    tg.xuLy(gd);

    return 0;
}

1,676 chars · codepastes.com