// 43VangVanQuyn.cpp : This file contains the 'main' function. Program execution begins and ends there.//#include <iostream>#include <string.h>#include <iomanip>using namespace std;class SINHVIEN {protected: char maso[10], hotendem[30], ten[20], khoa[20]; double diemanh, diemtincs;public: void Nhap(); void Indulieu();};class NGANHTOAN :SINHVIEN {private: double diemgt, diemds;public: void Nhap(); void Indulieu(); double Dtb(); string Xeploai();};class NGANHTIN :SINHVIEN {private: double diemnnc, diemctdl;public: void Nhap(); void Indulieu(); double Dtb(); string Xeploai();};void SINHVIEN::Nhap() { cout << "Ma so: "; cin.getline(this->maso, 10); cout << "Ho ten dem: "; cin.getline(this->hotendem, 30); cout << "Ten: "; cin.getline(this->ten, 20); cout << "khoa: "; cin.getline(this->khoa, 20); cout << "Diem tieng Anh: "; cin >> this->diemanh; cout << "Diem tin co so: "; cin >> this->diemtincs;}void SINHVIEN::Indulieu() { cout << setw(10) << left << maso << setw(25) << left << hotendem << setw(10) << left << ten << setw(15) << left << khoa << setw(10) << left << setprecision(2) << fixed << diemanh << setw(10) << left << setprecision(2) << fixed << diemtincs;}void NGANHTOAN::Nhap() { this->SINHVIEN::Nhap(); cout << "Diem giai tich: "; cin >> this->diemgt; cout << "Diem dai so: "; cin >> this->diemds;}void NGANHTOAN::Indulieu() { this->SINHVIEN::Indulieu(); cout << setw(10) << left << setprecision(2) << fixed << diemgt << setw(10) << left << setprecision(2) << fixed << diemds << setw(10) << left << setprecision(2) << fixed << Dtb() << setw(20) << left << Xeploai();}double NGANHTOAN::Dtb() { double dtb = 0; dtb = this->diemanh + this->diemtincs; dtb = dtb + this->diemgt + this->diemds; dtb = dtb / 4; return dtb;}string NGANHTOAN::Xeploai() { string kq = ""; double dtb = this->Dtb(); if (dtb > 8.0) { kq = "Gioi"; } else if ((dtb >= 6.5) && (dtb < 8.0)) { kq = "Kha"; } else if ((dtb >= 5.0) && (dtb < 6.5)) { kq = "Trung binh"; } else { kq = "Yeu"; } return kq;}void NGANHTIN::Nhap() { this->SINHVIEN::Nhap(); cout << "Diem NN C: "; cin >> this->diemnnc; cout << "Diem CTDL: "; cin >> this->diemctdl;}void NGANHTIN::Indulieu() { this->SINHVIEN::Indulieu(); cout << setw(10) << left << setprecision(2) << fixed << diemnnc << setw(10) << left << setprecision(2) << fixed << diemctdl << setw(10) << left << setprecision(2) << fixed << Dtb() << setw(20) << left << Xeploai();}double NGANHTIN::Dtb() { double dtb = 0; dtb = this->diemanh + this->diemtincs; dtb = dtb + this->diemnnc + this->diemctdl; dtb = dtb / 4; return dtb;}string NGANHTIN::Xeploai() { string kq = ""; double dtb = this->Dtb(); if (dtb > 8.0) { kq = "Gioi"; } else if ((dtb >= 6.5) && (dtb < 8.0)) { kq = "Kha"; } else if ((dtb >= 5.0) && (dtb < 6.5)) { kq = "Trung binh"; } else { kq = "Yeu"; } return kq;}class DS_SVTOAN{private: NGANHTOAN* ds = new NGANHTOAN[100]; int i = 0; double dtb = 0; int gioi = 0, kha = 0, tb = 0, yeu = 0;public: void Nhap() { char ok; while (i < 100) { ds[i].Nhap(); i++; cout << "Ban co tiep tuc nhap khong? (C/K): "; cin >> ok; cin.ignore(); if (ok == 'k' || ok == 'K') break; } } void Inketqua() { cout << "Ket qua nganh toan:" << endl; cout << setw(10) << left << "ma so" << setw(25) << left << "Ho va" << setw(10) << left << "Ten" << setw(15) << left << "Khoa" << setw(10) << left << "T. Anh" << setw(10) << left << "Tin CS" << setw(10) << left << "Giai tich" << setw(10) << left << "Dai so" << setw(10) << left << "DTB" << setw(20) << left << "Xep loai" << endl; int j = 0; for (int j = 0; j < i; j++) { //Thong ke xep loai dtb = ds[j].Dtb(); if (dtb > 8.0) { gioi++; } else if ((dtb >= 6.5) && (dtb < 8.0)) { kha++; } else if ((dtb >= 5.0) && (dtb < 6.5)) { tb++; } else { yeu++; } ds[j].Indulieu(); cout << endl; } //In thong ke xep loai cout << "Gioi: " << setw(20) << left << gioi << "Kha: " << setw(20) << left << kha << "Tb: " << setw(20) << left << tb <<"Yeu: " << setw(20) << left << yeu << endl; }};class DS_SVTIN{private: NGANHTIN* ds = new NGANHTIN[100]; int i = 0; double dtb = 0; int gioi = 0, kha = 0, tb = 0, yeu = 0;public: void Nhap() { char ok; while (i < 100) { ds[i].Nhap(); i++; cout << "Ban co tiep tuc nhap khong? (C/K): "; cin >> ok; cin.ignore(); if (ok == 'k' || ok == 'K') break; } } void Inketqua() { cout << "Ket qua nganh tin:" << endl; cout << setw(10) << left << "ma so" << setw(25) << left << "Ho va" << setw(10) << left << "Ten" << setw(15) << left << "Khoa" << setw(10) << left << "T. Anh" << setw(10) << left << "Tin CS" << setw(10) << left << "NNLT C" << setw(10) << left << "CTDL" << setw(10) << left << "DTB" << setw(20) << left << "Xep loai" << endl; int j = 0; for (int j = 0; j < i; j++) { //Thong ke xep loai dtb = ds[j].Dtb(); if (dtb > 8.0) { gioi++; } else if ((dtb >= 6.5) && (dtb < 8.0)) { kha++; } else if ((dtb >= 5.0) && (dtb < 6.5)) { tb++; } else { yeu++; } ds[j].Indulieu(); cout << endl; } //In thong ke xep loai cout << "Gioi: " << setw(20) << left << gioi << "Kha: " << setw(20) << left << kha << "Tb: " << setw(20) << left << tb << "Yeu: " << setw(20) << left << yeu << endl; }};int main(){ DS_SVTOAN dssvtoan; cout << "Nhap danh sach sinh vien nganh toan:" << endl; dssvtoan.Nhap(); DS_SVTIN dssvtin; cout << "Nhap danh sach sinh vien nganh tin:" << endl; dssvtin.Nhap(); dssvtoan.Inketqua(); dssvtin.Inketqua(); return 0;}
Tác giả: Vàng Văn Quyn
Những tin cũ hơn
1. Thu thập và Sử dụng Dữ liệu Người dùngỨng dụng của chúng tôi yêu cầu người dùng đăng nhập bằng tài khoản Google của họ để sử dụng các dịch vụ như Google Drive và Google Sheets. Khi người dùng đăng nhập, chúng tôi chỉ thu thập các quyền truy cập cần thiết như quyền truy cập vào các tệp Drive và...
- Click vào nút hiển thị ngày trong tuần hoặc tháng âm lịch để xem chi tiết
- Màu đỏ: Ngày tốt
- Xanh lá: Đầu tháng âm lịch
- Màu vàng: Ngày hiện tại