Đây là 1 số class em đã thiết kế ! trình còn gà các bác xem giúp em với nhé !
thanks các bác !
Lớp Người
Code:
#include "Date_bc.cpp"
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
#include<fstream.h>
#include<iomanip.h>
class Person
{
char* hoten;
char gioitinh[3];
Date ngaysinh;
char* quequan;
char* cmnd;
public:
Person();
Person(char*,char*,Date,char*,char*);
Person(const Person&);
~Person()
{
delete[]hoten;
delete[]quequan;
delete[]cmnd;
}
Person& operator=(const Person&);
void NhapThongTin();
void InThongTin();
char* LayHoTen() {return hoten;}
void GhifilePerson();
};
Person::Person():ngaysinh()
{
hoten=new char[50];
strcpy(hoten," ");
strcpy(gioitinh," ");
quequan=new char[50];
strcpy(quequan," ");
cmnd=new char[50];
strcpy(cmnd," ");
}
Person::Person(char* ht,char* gt,Date ns,char* qq,char*cm)
{
hoten=strdup(ht);
strcpy(gioitinh,gt);
ngaysinh=ns;
quequan=strdup(qq);
cmnd=strdup(cm);
}
Person::Person(const Person& dv):ngaysinh(dv.ngaysinh)
{
hoten=strdup(dv.hoten);
strcpy(gioitinh,dv.gioitinh);
quequan=strdup(dv.quequan);
cmnd=strdup(dv.cmnd);}
Person& Person::operator=(const Person& dv)
{
delete[]hoten;
hoten=strdup(dv.hoten);
strcpy(gioitinh,dv.gioitinh);
ngaysinh=dv.ngaysinh;
delete[]quequan;
quequan=strdup(dv.quequan);
delete[]cmnd;
cmnd=strdup(dv.cmnd);
return* this;
}
void Person::NhapThongTin()
{
int i,j,k;
char* blank=" ";
cout<<"Ho ten: ";gets(hoten);
k=20-strlen(hoten);
for(i=0;i<k;i++)
{
strcat(hoten,blank);
}
cout<<"gioitinh: ";gets(gioitinh);
k=5-strlen(gioitinh);
for(i=0;i<k;i++)
{
strcat(gioitinh,blank);
}
cout<<"Ngay sinh: "<<endl;
cout<<" "; ngaysinh.Nhap();
cout<<endl;
cout<<"Que quan: ";gets(quequan);
k=15-strlen(quequan);
for(i=0;i<k;i++)
{
strcat(quequan,blank);
}
cout<<"CMND: ";gets(cmnd);
k=15-strlen(cmnd);
for(i=0;i<k;i++)
{
strcat(cmnd,blank);
}
}
void Person::InThongTin()
{
cout<<"Ho ten: "<<hoten<<endl;
cout<<"gioitinh: "<<gioitinh<<endl;
cout<<"Ngay sinh: "; ngaysinh.In();
cout<<endl;
cout<<"Que quan: "<<quequan<<endl;
cout<<"CMND: "<<cmnd<<endl;
}
void Person::GhifilePerson()
{
ofstream OutFile("Person.txt",ios::app);
OutFile<<hoten<<"$"<<gioitinh<<"$";
ngaysinh.GhifileDate();
OutFile<<"$"<<quequan<<"$";
OutFile<<"$"<<cmnd<<endl;
OutFile.close();
}
/*void ChiDoan_SV::DocfileChiDoan_SV()
{
ifstream InFile("Person.txt",ios::in);
// cout<<setiosflags(ios::left)<<setw(strlen(mscd)+2)<<mscd<<setw(strlen(tencd)+2)<<tencd<<doanphi<<endl;
}
*/
void main()
{
Person a;
clrscr();
a.NhapThongTin();
a.InThongTin();
a.GhifilePerson();
getch();
}
Lớp UngCuVien
Code:
#include "Person.CPP"
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
class UngCuVien:public Person
{
char* sinhsong;
char* dang;
public:
UngCuVien():Person()
{
sinhsong=new char[50];
strcpy(sinhsong," ");
dang=new char[100];
strcpy(dang," ");
}
UngCuVien(char* ht,char* gt,Date ns,char* qq,char* cm,char* ss,char* d):Person()
{
sinhsong=strdup(ss);
dang=strdup(d);
}
~UngCuVien() {delete[]sinhsong;delete[]dang;}
UngCuVien(const UngCuVien& ucv):Person(ucv)
{
sinhsong=strdup(ucv.sinhsong);
dang=strdup(ucv.dang);
}
UngCuVien& operator=(const UngCuVien& ucv)
{
delete[]sinhsong;
delete[] dang;
sinhsong=strdup(ucv.sinhsong);
dang=strdup(ucv.dang);
return *this;
}
void NhapThongTin_ucv()
{
cout<<"Sinh song tai My trong bao lau: "; gets(sinhsong);
cout<<"Dang Phai: "; gets(dang);
NhapThongTin();
}
void InThongTin_ucv()
{
cout<<"sinhsong: "<<sinhsong<<endl;
cout<<"Dang Phai: "<<dang<<endl;
InThongTin();
}
char* Lay_dang() {return dang;}
char* Lay_sinhsong() {return sinhsong;}
};
void main()
{
clrscr();
fflush(stdin);
UngCuVien a;
a.NhapThongTin_ucv();
clrscr();
a.InThongTin_ucv();
getch();
}
Lớp Đại cử tri
Code:
#include "Person.CPP"
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
class DaiCuTri:public Person
{
char* bang;
public:
DaiCuTri():Person()
{
bang=new char[50];
strcpy(bang," ");
}
DaiCuTri(char* ht,char* p,Date ns,char* qq,Date nvd,char* vv,char* cvd,char* ms,char* dv):Person()
{
bang=strdup(dv);
}
~DaiCuTri() {delete[]bang;}
DaiCuTri(const DaiCuTri& dct):Person(dct)
{
bang=strdup(dct.bang);
}
DaiCuTri& operator=(const DaiCuTri& dct)
{
delete[]bang;
bang=strdup(dct.bang);
return *this;
}
void NhapThongTin_dct()
{
cout<<"Ten Bang: "; gets(bang);
NhapThongTin();
}
void InThongTin_dct()
{
cout<<"Tieu Bang: "<<bang<<endl;
InThongTin();
}
char* Lay_bang() {return bang;}
};
void main()
{
clrscr();
fflush(stdin);
DaiCuTri a;
a.NhapThongTin_dct();
clrscr();
a.InThongTin_dct();
getch();
}
Lớp Đảng Phái chính trị
Code:
#include "Date_bc.cpp"
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
#include<fstream.h>
#include<iomanip.h>
class DangPhai
{
char* tendang;
Date ngaythanhlap;
char* chutich;
public:
DangPhai();
DangPhai(char*,char*,Date,char*,char*);
DangPhai(const DangPhai&);
~DangPhai()
{
delete[]tendang;
delete[]chutich;
}
DangPhai& operator=(const DangPhai&);
void NhapThongTin();
void InThongTin();
char* Laytendang() {return tendang;}
void GhifileDangPhai();
};
DangPhai::DangPhai():ngaythanhlap()
{
tendang=new char[50];
strcpy(tendang," ");
chutich=new char[50];
strcpy(chutich," ");
}
DangPhai::DangPhai(char* tdang,Date ngaytl,char* ctich)
{
tendang=strdup(tdang);
ngaythanhlap=ngaytl;
chutich=strdup(ctich);
}
DangPhai::DangPhai(const DangPhai& dv):ngaythanhlap(dv.ngaythanhlap)
{
tendang=strdup(dv.tendang);
chutich=strdup(dv.chutich);
}
DangPhai& DangPhai::operator=(const DangPhai& dv)
{
delete[]tendang;
tendang=strdup(dv.tendang);
ngaythanhlap=dv.ngaythanhlap;
delete[]chutich;
chutich=strdup(dv.chutich);
return* this;
}
void DangPhai::NhapThongTin()
{
int i,j,k;
char* blank=" ";
cout<<"Ten Dang Phai Chinh Tri: ";gets(tendang);
k=20-strlen(tendang);
for(i=0;i<k;i++)
{
strcat(tendang,blank);
}
cout<<"Ngay thanh lap: "<<endl;
cout<<" "; ngaythanhlap.Nhap();
cout<<endl;
cout<<"Chu Tich: ";gets(chutich);
k=15-strlen(chutich);
for(i=0;i<k;i++)
{
strcat(chutich,blank);
}
}
void DangPhai::InThongTin()
{
cout<<"Ten Dang Phai Chinh Tri: "<<tendang<<endl;
cout<<"Ngay thanh lap: "; ngaythanhlap.In();
cout<<endl;
cout<<"Chu Tich: "<<chutich<<endl;
}
/* void DangPhai::GhifileDangPhai()
{
ofstream OutFile("DangPhai.txt",ios::app);
OutFile<<tendang<<"$"<<;
ngaythanhlap.GhifileDate();
OutFile<<"$"<<chutich<<"$";
OutFile.close();
}
void DangPhai::DocfileDangPhai()
{
ifstream InFile("DangPhai.txt",ios::in);
// cout<<setiosflags(ios::left)<<setw(strlen(mscd)+2)<<mscd<<setw(strlen(tencd)+2)<<tencd<<doanphi<<endl;
}
*/
void main()
{
DangPhai a;
clrscr();
a.NhapThongTin();
a.InThongTin();
a.GhifileDangPhai();
getch();
}