Tìm kiếm

BT Về Lập trình hướng đối tượng (Mở đầu)

6. Xây dựng lớp hóa đơn gồm các thành phần:
-DL: mã vật tư, tên vật tư, loại phiếu, ngày lập, khối lượng, đơn giá, thành tiền
-Pt: nhập, in, kiểm tra phiếu nhập hay xuất
Hàm main:
-Nhập danh sách hóa đơn
-Tính thành tiền cho các hóa đơn và in tổng thành tiền
-In danh sách sau khi xếp theo số tiền giảm dần 

Code:
#include <iostream.h>
#include <conio.h>

class date
{
public:
int ngay;
int thang;
int nam;
};
class HD
{
 private:
int ma;
char *ten;
char *loai;
date nn;
float kl;
float dg;
 public:
HD()
{
 ten = new char[30];
 loai = new char[10];
 ma = 0;
 nn.ngay = 0;
 nn.thang =0;
 nn.nam=0;
 kl = 0;
 dg = 0;
 }
 ~HD()
 {
delete ten;
delete loai;
}

float tt()

{
return kl*dg;
}



friend istream& operator>>(istream& is,HD &x)
{

cout<<"nhap ma sp: ";is>>x.ma;
is.ignore();
cout<<"Ten : ";is.getline(x.ten,30);
cout<<"loai : ";is.getline(x.loai,10);
cout<<"Ngay lap :"; is>>x.nn.ngay>>x.nn.thang>>x.nn.nam;
cout<<"khoi luong: ";is>>x.kl;
cout<<"don gia: ";is>>x.dg;
return is;
}


friend ostream& operator<<(ostream& os,HD &x)
{
 os<<x.ma<<"\t"<<x.ten<<"\t"<<x.loai<<"\t"<<x.nn.ngay<<"/"<<x.nn.thang<<"/"<<x.nn.nam<<"\t"<<x.kl<<"\t"<<x.dg<<"\t"<<x.tt();
 return os;
 }
};

void main()
{
int n;
HD temp;
HD *p;
cout<<"Nhap so sp : ";cin>>n;
p  = new HD[n+1];
for (int i=1;i<=n;i++)
 {
cout<<"Nhap sp thu "<<i<<": \n";
cin>>p[i];
 p[i].tt();
 }
for (i=1;i<n;i++)
 for (int j=i+1;j<=n;j++)
  if (p[j].tt()>p[i].tt())
{
temp = p[j];
p[j]=p[i];
p[i]=temp;
}
 cout<<"======================Hoa Don Thanh toan====================\n";
 for (int j=1;j<=n;j++)
 {
cout<<p[j];
cout<<"\n";
}
}

Read Users' Comments (0)

0 Response to "BT Về Lập trình hướng đối tượng (Mở đầu)"

Đăng nhận xét

Support

Liên hệ DMTuan-Uneti
Mọi thông tin góp ý các bạn liên hệ với mình ! Mail:
  1. manhtuan.leo@gmail.com
  2. manhtuan.itvp@gmail.com

Y!M: manhtuan.it92