lập trình hướng đối tượng quản lý họ tên, năm sinh, điểm chín môn học của tất cả các học viên của lớp học. Cho biết bao nhiêu học viên trong lớp được phép làm luận văn tốt nghiệp, bao nhiêu học viên thi tốt nghiệp, bao nhiêu người phải thi lại và tên môn thi lại. Tiêu chuẩn để xét: Làm luận văn phải có điểm trung bình lớn hơn 7 trong đó không có môn nào dưới 5. Thi tốt nghiệp khi điểm trung bình không lớn hơn 7 và điểm các môn không dưới 5. Thi lại có môn dưới 5
hs.h
#pragma once
#include<iostream>
#include<stdlib.h>
using namespace std;
class hs
{
private:
char ten[100];
int namsinh;
float toan,ly,hoa,van,su,dia,anh,tin;
public:
void nhap();
void xuatten();
void xuatnamsinh();
void monthilai();
float dtb();
int hanhdong();
hs(void);
~hs(void);
};
hs.cpp
#include "hs.h"
void hs::nhap()
{
cout<<"\nTen: ";
fflush(stdin);
gets(ten);
do{
cout<<"\nnam sinh: ";
cin>>namsinh;
if(namsinh<1900 || namsinh >2100) cout<<"\nkhong hop le! nhap lai!!";
}while(namsinh<1900 || namsinh >2100);
cout<<"\nnhap diem cac mon:";
do{
cout<<"\nToan: ";cin>>toan;
if(toan<0 || toan>10) cout<<"\nkhong hop le! nhap lai!!";
}while(toan<0 || toan>10);
do{
cout<<"\nLy: ";cin>>ly;
if(ly<0 || ly>10) cout<<"\nkhong hop le! nhap lai!!";
}while(ly<0 || ly>10);
do{
cout<<"\nhoa: ";cin>>hoa;
if(hoa<0 || hoa>10) cout<<"\nkhong hop le! nhap lai!!";
}while(hoa<0 || hoa>10);
do{
cout<<"\nvan: ";cin>>van;
if(van<0 || van>10) cout<<"\nkhong hop le! nhap lai!!";
}while(van<0 || van>10);
do{
cout<<"\nsu: ";cin>>su;
if(su<0 || su>10) cout<<"\nkhong hop le! nhap lai!!";
}while(su<0 || su>10);
do{
cout<<"\ndia: ";cin>>dia;
if(dia<0 || dia>10) cout<<"\nkhong hop le! nhap lai!!";
}while(dia<0 || dia>10);
do{
cout<<"\nanh: ";cin>>anh;
if(anh<0 || anh>10) cout<<"\nkhong hop le! nhap lai!!";
}while(anh<0 || anh>10);
do{
cout<<"\ntin: ";cin>>tin;
if(tin<0 || tin>10) cout<<"\nkhong hop le! nhap lai!!";
}while(tin<0 || tin>10);
}
int hs::hanhdong()
{
if(toan<5 || ly<5 || hoa<5 || van<5 || su<5||dia<5||anh<5||tin<5) return -1;
if(dtb()>7) return 1;
return 0;
}
void hs::xuatten()
{
cout<<ten;
}
void hs::monthilai()
{
cout<<"\n*nhung mon thi lai:";
if(toan<5) cout<<"\n\ttoan";
if(ly<5) cout<<"\n\tly";
if(hoa<5) cout<<"\n\thoa";
if(van<5) cout<<"\n\tvan";
if(su<5) cout<<"\n\tsu";
if(dia<5) cout<<"\n\tdia";
if(anh<5) cout<<"\n\tanh";
if(tin<5) cout<<"\n\ttin";
}
void hs::xuatnamsinh()
{
cout<<namsinh;
}
float hs::dtb()
{
return (toan+ly+hoa+van+su+dia+anh+tin)/8;
}
hs::hs(void)
{
}
hs::~hs(void)
{
}
danhsachhs.h
#pragma once
#include"hs.h"
class danhsachhs
{
private:
hs x[1000];
int n;
public:
void nhap();
void xuatthilai();
void xuatthitotnghiep();
void xuatluanvan();
danhsachhs(void);
~danhsachhs(void);
};
danhsachhs.cpp
#include "danhsachhs.h"
void danhsachhs::nhap()
{
int k,i=1;
cout<<"\n*nhap hoc sinh 1";
x[0].nhap();
do{
cout<<"\n------menu-----";
cout<<"\n| 1.nhap tiep.|";
cout<<"\n| 0.ket thuc. |";
cout<<"\n---------------";
do{
cout<<"\nlua chon cua ban: ";
cin>>k;
}while(k!=1 && k!=0);
if(k==1)
{
cout<<"\n\t* nhap hoc sinh "<<i+1;
x[i++].nhap();
}
}while(k==1);
n=i;
}
void danhsachhs::xuatthilai()
{
cout<<"\n\t* DANH SACH THI LAI *\n";
int i,j=0;
for(i=0;i<n;i++)
if(x[i].hanhdong()==-1)
{
j++;
cout<<"\n"<<j<<". ";x[i].xuatten();cout<<" - ";x[i].xuatnamsinh();cout<<"\n";
x[i].monthilai();
}
if(j==0) cout<<"\n\tkhong co!";
}
void danhsachhs::xuatthitotnghiep()
{
cout<<"\n\t* DANH SACH THI TOT NGHIEP *\n";
int i,j=0;
for(i=0;i<n;i++)
if(x[i].hanhdong()==0)
{
j++;
cout<<"\n"<<j<<". ";x[i].xuatten();cout<<" - ";x[i].xuatnamsinh();cout<<"\n";
}
if(j==0) cout<<"\n\tkhong co!\n";
}
void danhsachhs::xuatluanvan()
{
cout<<"\n\t* DANH SACH LAM LUAN VAN TOT NGHIEP *\n";
int i,j=0;
for(i=0;i<n;i++)
if(x[i].hanhdong()==1)
{
j++;
cout<<"\n"<<j<<". ";x[i].xuatten();cout<<" - ";x[i].xuatnamsinh();cout<<"\n";
}
if(j==0) cout<<"\n\tkhong co!\n";
}
danhsachhs::danhsachhs(void)
{
}
danhsachhs::~danhsachhs(void)
{
}
source.cpp
#include"danhsachhs.h"
void main()
{
danhsachhs x;
x.nhap();
cout<<"\n-------------------------------------------------------\n";
x.xuatluanvan();
cout<<"\n-------------------------------------------------------\n";
x.xuatthitotnghiep();
cout<<"\n-------------------------------------------------------\n";
x.xuatthilai();
system("pause");
}
Không có nhận xét nào:
Đăng nhận xét