Truyen2U.Net quay lại rồi đây! Các bạn truy cập Truyen2U.Com. Mong các bạn tiếp tục ủng hộ truy cập tên miền mới này nhé! Mãi yêu... ♥

tailieu

//Đề 2: Cài đặt lớp SACH gồm

//dữ liệu: tên sách, tác giả, giá;

//phương thức xuất bản.

//Cài đặt lớp SGK kế thừa lớp SACH và bổ sung

//dữ liệu: lớp (LOP);

//phương thức: định nghĩa lại phương thức xuất bản để

//thêm điều kiện nếu LOP<6 thì được giảm giá 10%.

//Viết chương trình nhập mảng SGK có n quyển (n<10),

//in danh sách các SGK giảm giá.

#include<iostream>

#include<string>

using namespace std;

class sach{

public:

      string m_tensach;

      string m_tacgia;

      float m_gia;

public:

      sach(){m_tensach="";m_tacgia="";m_gia=0;};

      sach(string tensach,string tacgia,float gia){

            m_tensach=tensach;

            m_tacgia=tacgia;

            m_gia= gia;

      };

      friend istream& operator>>(istream &is,sach &x)

      {

            cout<<"nhap ten sach :";is>>x.m_tensach;

            cout<<"nhap tac gia :";is>>x.m_tacgia;

            cout<<"nhap gia sach :";is>>x.m_gia;

            return is;

      }

      friend ostream& operator<<(ostream &os,sach &x)

      {

            os<<"("<<x.m_tensach<<","<<x.m_tacgia<<","<<x.m_gia<<")";

            return os;

      }

      void xuatban(){cout<<"sach nay duoc xuat ban";};

};

class sgk:public sach{

public:

      int m_lop;

public:

      sgk():sach(){m_lop=0;};

      sgk(string tensach,string tacgia,float gia,int lop):sach(tensach,tacgia,gia){

            m_lop = lop;

 

      };

      friend istream& operator>>(istream &is,sgk &x)

      {

            cout<<"nhap ten sach :";is>>x.m_tensach;

            cout<<"nhap tac gia :";is>>x.m_tacgia;

            cout<<"nhap gia sach :";is>>x.m_gia;

            cout<<"nhap lop :";is>>x.m_lop;

            return is;

      };

    friend ostream& operator<<(ostream &os,sgk &x)

      {

            os<<"("<<x.m_tensach<<","<<x.m_tacgia<<","<<x.m_gia<<","<<x.m_lop<<")";

            return os;

      };

      int operator<(sgk x)

      {

            if(m_lop <x.m_lop)return 1;

      return 0;

      };

 

      void xuatban(){if(m_lop<6) cout<<"giam gia 10%";}

};

int main(){

 

//xây dựng một menu cho phép thao tác với bài toán đã cho như sau:

//-nhap  -in   -xuat ban  -thoát

//cho lớp sách giáo khoa

// viết toán tử so sánh lớn hơn sgk1 > sgk2 nếu sgk1.lop > sgk2.lop

// viết thêm chức năng trong menu thực hiện sắp xếp sgk theo lớp

//

 

      int n;

      cout<<" nhap so n:";cin>>n;

    sgk mangsgk[3];

      sgk t;

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

      {

            cout<<"Nhap sach giao khoa thu:"<<i+1;

            cin>>mangsgk[i];

      }

      cout<<"danh sach sgk:";

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

      {

            if(mangsgk[i].m_lop<6) cout<<mangsgk[i];mangsgk[i].xuatban();

 

      }

      /*int chon;

 

      while (true)

      {

            cout<<"thao tac sgk

";

            cout<<"01.nhap danh sach

";

            cout<<"02.in danh sach

";

            cout<<"03.xuat ban

";

            cout<<"04.sap xep theo lop

";

            cout<<"05.thoat

";

            cout<<"chon mot chuc nang bat ky

";

            cin>>chon;

            switch(chon)

            {

            case 1:

                  cout<<"nhap so luong sach

";

                  cin>>n;

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

                  cout<<" nhap sach giao khoa thu  "<<i+1;

                  cin>>mangsgk[i];

 

                  };

                  cin.ignore();

                  break;

            case 2:

                  cout<<"in ra danh sach

";

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

                        cout<<mangsgk[i]<<"

";

                  };

                  break;

            case 3:

                  cout<<"xuat ban

";

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

                        mangsgk[i].xuatban();};

                        break;

        case 4:  

            cout<<"sap xep sgk";

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

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

                  if(mangsgk[i]<mangsgk[j]){

                  t=mangsgk[i];

                  mangsgk[i]=mangsgk[j];

                  mangsgk[j]=t;

                  };

                  };

                  };

                  break;

 

            case 5:

                  exit(1);break;

            default :

                  cout <<" ban da nhap sai hay nhap lai

";

                  break;

 

 

      }

 

      }

*/

 

};

 

 

 

 

 

 

 

 

#include <iostream>

#include <string>

using namespace std;

//xây dựng một menu cho phép thao tác với bài toán đã cho như sau:

//-nhap  -in   -linh thưởng  -thoát

//cho lớp sinh viên

class nguoi{

//dữ liệu: họ và tên, giới tính, địa chỉ;

//phương thức: lĩnh thưởng. +(xây dựng-constructor+vào ra)

public:

                string m_hoten;

                int m_gioitinh;

                string m_diachi;

public:

                nguoi(){m_hoten = ""; m_gioitinh = 0; m_diachi = "";};

                nguoi(string hoten, int gioitinh, string diachi){m_hoten = hoten; m_gioitinh = gioitinh; m_diachi = diachi;};

                friend istream& operator >> (istream &is, nguoi &x)

                {

                                cout << "Nhap ho ten: "; is >> x.m_hoten;

                                cout << "Nhap gioi tinh: "; is >> x.m_gioitinh;

                                cout << "Nhap dia chi: "; is >> x.m_diachi;

                                return is;

                };

                friend ostream& operator << (ostream &os, nguoi &x)

                {

                                os << x.m_hoten << ", gioi tinh(0/1)" << (x.m_gioitinh? "Nam" : "Nu") << ", dia chi " << x.m_diachi;

                                return os;

                };

                void LinhThuong()

                {   cout << "Toi duoc linh thuong";

                                };

};

class sv: public nguoi{

//dữ liệu: điểm trung bình(DTB);

//phương thức: định nghĩa lại phương thức lĩnh thưởng để

//thêm điều kiện nếu DTB>8 thì được nhận 500000đ

public:

                float m_DTB;

public:

                sv():nguoi(){m_DTB=0;};

                sv(string hoten, int gioitinh, string diachi, float DTB):nguoi(hoten, gioitinh, diachi)

                {

                                m_DTB = DTB;

                };

                friend istream& operator >> (istream &is, sv &x)

                {

                                cout << "Nhap ho ten: "; is >> x.m_hoten;

                                cout << "Nhap gioi tinh: "; is >> x.m_gioitinh;

                                cout << "Nhap dia chi: "; is >> x.m_diachi;

                                cout << "Nhap diem trung binh: "; is >> x.m_DTB;

                                return is;

                };

                friend ostream& operator << (ostream &os, sv &x)

                {

                                os << x.m_hoten << ", gioi tinh: " << (x.m_gioitinh? "Nam" : "Nu")

                                                << ", dia chi " << x.m_diachi << ", DTB = " << x.m_DTB;

                                return os;

                };

                void LinhThuong()

                {

                                if (m_DTB > 8)

                                                cout << "Nhan duoc 500000 tien thuong!!!

";

                };

};

void main(){

//- nhập mảng SV có n người (n<10), khai báo mảng (nhập n )

//   nhập mảng (từng phần tử của mảng: for (i=0;i<n;i++))

//- in danh sách các sinh viên lĩnh thưởng  for (i=0;i<n;i++)

                int n;

                cout << "Nhap so n ";

                cin >> n;

                sv mangsv[10];

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

                {

                                cout << "Nhap sinh vien thu " << i+1;

                                cin >> mangsv[i];

                }

                cout << "DANH SACH SINH VIEN:

";

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

                {

                                if (mangsv[i].m_DTB > 8)

                                                cout << mangsv[i]<<"

";

                }}

Bạn đang đọc truyện trên: Truyen2U.Com

Tags: