Bài tập lập trình Hướng đối tượng tổng hợp

Bài tập lập trình Hướng đối tượng tổng hợp

#include <bits/stdc++.h>

using namespace std;

Quý khách đang xem: Bài tập lập trình Hướng đối tượng tổng hợp

class Date

{

protected:

    int day, month, year;

public:

    Date()

    {

        this>day = this>month = this>year = 0;

    /span>

    ~Date()

    {

        this>day = this>month = this>year = 0;

    /span>

    void input()

    {

        cout << “Nhap Ngay: “;

        cin >> this>day;

        cout << “Nhap Thang: “;

        cin >> this>month;

        cout << “Nhap Nam: “;

        cin >> this>year;

    /span>

    void output()

    {

        cout << “Ngay/Thang/Nam: “ << this>day << “/” << this>month << “/” << this>year << endl;

    /span>

/span>;

//————————————————————-//

class Vemaybay

{

protected:

    string tenchuyen;

    Date ngaybay;

    int giave;

public:

    Vemaybay()

    {

        this>tenchuyen = “”;

        this>giave = 0;

    /span>

    ~Vemaybay()

    {

        this>tenchuyen = “”;

        this>giave = 0;

    /span>

Xem nhiều hơn: Tải Phần Mềm Cubase 5 Full Crack Miễn Phí, Cài Đặt Chi Tiết

    void input()

    {

        cin.ignore();

        cout << “Nhap Ten Chuyen: “; fflush(stdin); getline(cin, this>tenchuyen);

        cout << “Nhap Ngay Bay: “ << endl;

        ngaybay.input();

        cout << “Nhap Gia Ve: “; cin >> this>giave;

    /span>

    void output()

    {

        cout << “Ten Chuyen: “ << this>tenchuyen << endl;

        cout << “Ngay Bay: “ << endl << “t”;

        this>ngaybay.output();

        cout << “Gia Ve: “ << this>giave << endl;

    /span>

    int getgiave()

    {

        return this>giave;

    /span>

/span>;

class Nguoi

{

protected:

    string hoten, gioitinh;

    int tuoi;

public:

    Nguoi()

    {

        this>hoten = this>gioitinh = “”;

        this>tuoi = 0;

    /span>

    ~Nguoi()

    {

        this>hoten = this>gioitinh = “”;

        this>tuoi = 0;

    /span>

    void input()

    {

        cin.ignore();

        cout << “Nhap Ho Ten: “; fflush(stdin); getline(cin, this>hoten);

        cout << “Nhap Gioi Tinh: “; fflush(stdin); getline(cin, this>gioitinh);

        cout << “Nhap Tuoi: “; cin >> this>tuoi;

    /span>

    void output()

    {

        cout << “Ho Ten: “ << this>hoten << endl;

        cout << “Gioi Tinh: “ << this>gioitinh << endl;

        cout << “Tuoi: “ << this>tuoi << endl;

    /span>

/span>;

class Hanhkhach : public Nguoi

{

protected:

    int soluong;

    //Vemaybay *ve;

    Vemaybay ve[1000];

    int tongtien;

public:

    Hanhkhach()

    {

        this>soluong = 0;

        //this->ve = new Vemaybay[this->soluong];

        ve[this>soluong];

        tongtien = 0;

    /span>

    ~Hanhkhach()

    {

        soluong = 0;

        delete []ve;

        tongtien = 0;

    /span>

    void input()

    {

        Nguoi :: input();

        cout << “Nhap So Luong Ve Hanh Khach Da Mua: “; cin >> this>soluong;

        //ve = new Vemaybay[this->soluong];

Xem nhiều hơn: Cách tạo chú thích cuối trang Word 2010, 2013, 2016, 2007, 2003

        ve[this>soluong];

        for (int i = 0; i < this>soluong; ++i)

        {

            ve[i].input();

            tongtien += ve[i].getgiave();

        /span>

    /span>

    void output()

    {

        cout << “- Thong Tin Khach Hang: “ << endl;

        Nguoi :: output();

        cout << “- Thong Tin Chuyen Bay: “ << endl;

        for (int i = 0; i < this>soluong; ++i)

        {

            ve[i].output();

            cout << endl;

        /span>

        cout << “==> Tong Tien = “ << this>tongtien;

        cout << endl;

    /span>

    bool operator < (const Hanhkhach &obj)

    {

        if (this->tongtien < obj.tongtien) return true;

        else return false;

    /span>

/span>;

//———————————————————-//

void swap(Hanhkhach &a, Hanhkhach &b)

{

    Hanhkhach temp = a;

    a = b;

    b = temp;

/span>

void Bubblesort(Hanhkhach arr[], int n)

{

    for (int i = 0; i < n 1; ++i)

        for (int j = 0; j < n i 1; ++j)

            if (arr[j] < arr[j + 1])

                swap(arr[j], arr[j + 1]);

/span>

//———————————————————-//

int main()

{

    cout << “Nhap So Luong Khach Hang: “; int n; cin >> n;

    Hanhkhach *arr = new Hanhkhach[n];

    for (int i = 0; i < n; ++i) arr[i].input();

    cout << endl << endl << “Output” << endl << endl;

    for (int i = 0; i < n; ++i)

    {

        arr[i].output();

        cout << endl << “——————“ << endl << endl;

    /span>

    cout << “After Sort: “ << endl;

    Bubblesort(arr, n);

    for (int i = 0; i < n; ++i)

    {

        arr[i].output();

        cout << endl << “——————“ << endl << endl;

    /span>

    return 0;

/span>

Nguồn gốc: https://danhgiaaz.com
danh mục: Kinh nghiệm – Hướng dẫn

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *