Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.55 MB, 17 trang )
<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
<b>BỘ GIÁO DỤC VÀ ĐÀO TẠOTRƯỜNG ĐẠI HỌC XÂY DỰNG HÀ NỘI</b>
<b>KHOA CÔNG NGHỆ THÔNG TIN </b>
</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">
Họ và tên sinh viên 1: Tống Xuân ĐịnhHọ và tên sinh viên 2: Nguyễn Trung DũngHọ và tên sinh viên 3: Nguyễn Gia BảoHọ và tên sinh viên 4: Nguyễn Tiến Đạt
Trường: Trường Đại học Xây Dựng Hà Nội (HUCE)Giảng viên hướng dẫn: Nguyễn Trần Hải
<b>III. Phân tích u cầu:</b>
Nhóm đã thực hiện phân tích cẩn thận về các yêu cầu của ứng dụng, bao gồm: Quản lý thông tin cá nhân của sinh viên.
Hiển thị thông tin tất cả sinh viên.
Hiển thị thơng tin sinh viên qua viện tìm tên sinh viên. Tính điểm của từng sinh viên và xếp hạng.
Sử dụng ngôn ngữ lập trinh C++ và kiến thức đã học.
</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3"><b>IV. Nhiệm vụ của mỗi người trong nhóm 12:</b>
Tống Xuân Định: Nguyễn Trung Dũng: Nguyễn Gia Bảo: Nguyễn Tiến Đạt:
<b>V. Miêu tả class, các chức năng:</b>
- Sử dụng set, get để gán và lấy các dữ liệu thành phần
- Xây dựng các hàm thành phần phục vụ các chức năng trong phần main :
setMonhoc - Nhập tên các môn học, số tín chỉ
nhapthongtin - Nhập tên của các sinh viên, điểm của các môn học xemthongtin - Đưa ra màn hình tên sinh viên, tên mơn học, điểm từng mơn timkiem - Nhập tên sinh viên cần tìm Điểm đã nhập của sinh viên đó sẽ được
đưa ra màn hình
thongke - Đưa ra màn hình điểm các môn của từng sinh viên - Tính điểm trung bình của sinh viên theo thang điểm 10
- Đổi từ thang 10 sang 4 sau đó đưa ra kết quả bao gồm cả điểm chữ
<b>VI. Chạy thử chương trình:Các chức năng</b>
</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4"><b>Chức năng 1: Nhập thông tin môn họcHàm </b>setMonhoc<b>:</b>
void setMonhoc() {
for(int i = 0;i<somon;i++) {
cout<<"TEN MON HOC: "; cin>>monhoc[i];
cout<<"SO TIN CHI CUA MON HOC DO : "; cin >>tinchi[i];
}}
<b>Kết quả: </b>
<b>Chức năng 2: Nhập thông tin sinh viên</b>
</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5"><b>Hàm nhapthongtin:</b>
void nhapthongtin() {
cout<<"|
_____________________________________________________|"<<endl; cout << "Nhap TEN SINH VIEN:\n";
for (int i = 0; i < sosv; i++) {
cout << "TEN SINH VIEN: "; cin >> sinhvien[i];
for (int j = 0; j < somon; j++) {
cout << "NHAP DIEM CUA MON HOC " << monhoc[j] << " : "; cin >> diem[i][j];
} }cout<<"|
_____________________________________________________|"<<endl; }
<b>Kết quả: </b>
<b>Chức năng 3: Xem thông tin sinh viên</b>
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6"><b>Hàm xemthongtin: </b>
void xemthongtin() {
cout << "THONG TIN SINH VIEN:\n";
for (int i = 0; i < sosv; i++) {
cout << "SINH VIEN " << sinhvien[i] << " "; for (int j = 0; j < somon; j++)
{
cout << " MON :" << monhoc[j] << " DIEM: " << diem[i][j]; }
cout << endl; }
}
<b>Kết quả: </b>
<b>Chức năng 4: Tìm kiếm thông tin sinh viênHàm timkiem:</b>
</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">void timkiem() {
tg = i; } }
if (sinhvien[tg] == timkiemsv) {
cout << "SINH VIEN " << sinhvien[tg] << endl; for (int j = 0; j < somon; j++)
{
cout << " MON :" << monhoc[j] << " DIEM: " << diem[tg][j] <<endl;
} } else {
cout<<"KHONG TIM THAY SINH VIEN"<<endl; }
}
<b>Kết quả: </b>
- Nhập tên sinh viên có trong danh sách đã nhập thơng tin trước đó:
</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">- Nhập tên sinh viên không có trong danh sách đã nhập thơng tin trước đó:
<b>Chức năng 5: Thống kê thông tin sinh viênHàm thongke:</b>
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">void thongke(){
cout<<"|
____________________________________________________|"<<endl; cout << "DIEM TIN CHI CUA TUNG SINH VIEN " << endl;
for (int i = 0; i < sosv; i++) {
double diemtb, diemtc1mon, diemtatca, tongtc ;
for (int j = 0; j < somon; j++) {
diemtc1mon = diem[i][j] * tinchi[j]; tongtc += tinchi[j];
if (diemtb >= 8.5)
cout<<"Sinh vien "<< sinhvien[i]<<endl<<"Thang diem 10: "<< diemtb <<endl<< "Thang diem 4: " << diembon<<endl << "Diem chu: " << "A" << endl; else if (diemtb >= 7)
cout<<"Sinh vien "<< sinhvien[i]<<endl<<"Thang diem 10: "<< diemtb <<endl<< "Thang diem 4: " << diembon<<endl << "Diem chu: " << "B" << endl; else if (diemtb >= 5.5)
cout<<"Sinh vien "<< sinhvien[i]<<endl<<"Thang diem 10: "<< diemtb <<endl<< "Thang diem 4: " << diembon <<endl<< "Diem chu: " << "C" << endl; else if (diemtb >= 4.0)
cout<<"Sinh vien "<< sinhvien[i]<<endl<<"Thang diem 10: "<< diemtb <<endl<< "Thang diem 4: " << diembon<<endl << "Diem chu: " << "D" << endl; else
cout<<"Sinh vien "<< sinhvien[i]<<endl<<"Thang diem 10: "<< diemtb <<endl<< "Thang diem 4: " << diembon<<endl << "Diem chu: " << "F" << endl;}
<b>Kết quả: </b>
</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10"><b>VII. Chương trình hồn chỉnh:#include <iostream></b>
<b>#include <string>using namespace std;class student</b>
string *sinhvien; string *monhoc; int *tinchi; int sosv; int somon; int **diem;
student(string *monhoc, int sosv, int somon, int *tinchi) {
this->monhoc = monhoc;
</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">this->sosv = sosv; this->somon = somon; this->tinchi = tinchi; sinhvien = new string[sosv]; diem = new int *[sosv]; for (int i = 0; i < sosv; i++) {
diem[i] = new int[somon]; }
}
void setMonhoc(string *mh) { monhoc = mh;
}
string* getMonhoc() { return monhoc; }
void setSosv(int sv) { sosv = sv; }
int getSosv() { return sosv; }
void setSomon(int sm) { somon = sm; }
int getSomon() { return somon; }
void setTinchi(int *tc) { tinchi = tc;
}
int* getTinchi() { return tinchi; }
~student()
</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">{
delete[] monhoc; delete[] tinchi; delete[] sinhvien; for (int i = 0; i < sosv; i++) {
delete[] diem[i]; }
delete[] diem; }
<b> void setMonhoc() {</b>
for(int i = 0;i<somon;i++) {
cout<<"TEN MON HOC: "; cin>>monhoc[i];
cout<<"SO TIN CHI CUA MON HOC DO : "; cin >>tinchi[i];
} }
<b> void nhapthongtin() </b>
{ cout<<"|
____________________________________________________|"<<endl; cout << "Nhap TEN SINH VIEN:\n";
for (int i = 0; i < sosv; i++) {
cout << "TEN SINH VIEN: "; cin >> sinhvien[i];
for (int j = 0; j < somon; j++) {
cout << "NHAP DIEM CUA MON HOC " << monhoc[j] << " : "; cin >> diem[i][j];
} } cout<<"|
____________________________________________________|"<<endl; }
</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13"><b>void</b> xemthongtin() {
cout << "THONG TIN SINH VIEN:\n"; for (int i = 0; i < sosv; i++)
}
<b> void timkiem() </b>
{ int tg;
tg = i; } }
if (sinhvien[tg] == timkiemsv) {
cout << "SINH VIEN " << sinhvien[tg] << endl; for (int j = 0; j < somon; j++)
{
cout << " MON :" << monhoc[j] << " DIEM: " << diem[tg][j]<<endl;
} } else{
cout<<"KHONG TIM THAY SINH VIEN"<<endl; }
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">}
<b> void thongke(){</b>
cout<<"|
____________________________________________________|"<<endl; cout << "DIEM TIN CHI CUA TUNG SINH VIEN " << endl; for (int i = 0; i < sosv; i++) {
double diemtb, diemtc1mon, diemtatca, tongtc ; for (int j = 0; j < somon; j++)
cout<<"Sinh vien "<< sinhvien[i]<<endl<<"Thang diem 10: "<< diemtb <<endl<< "Thang diem 4: " << diembon<<endl << "Diem chu: " << "A" << endl; else if (diemtb >= 7)
cout<<"Sinh vien "<< sinhvien[i]<<endl<<"Thang diem 10: "<< diemtb <<endl<< "Thang diem 4: " << diembon<<endl << "Diem chu: " << "B" << endl; else if (diemtb >= 5.5)
cout<<"Sinh vien "<< sinhvien[i]<<endl<<"Thang diem 10: "<< diemtb <<endl<< "Thang diem 4: " << diembon <<endl<< "Diem chu: " << "C" << endl; else if (diemtb >= 4.0)
cout<<"Sinh vien "<< sinhvien[i]<<endl<<"Thang diem 10: "<< diemtb <<endl<< "Thang diem 4: " << diembon<<endl << "Diem chu: " << "D" << endl; else
cout<<"Sinh vien "<< sinhvien[i]<<endl<<"Thang diem 10: "<< diemtb <<endl<< "Thang diem 4: " << diembon<<endl << "Diem chu: " << "F" << endl;}}
<b>int main(){</b>
int sosv, somon;
</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">cout << "NHAP SO LUONG SINH VIEN: "; cin >> sosv;
cout << "NHAP SO LUONG MON HOC: "; cin >> somon;
string *monhoc = new string[somon]; int *tinchi = new int[somon];
student s(monhoc, sosv, somon, tinchi);
int luachon; do {
cout<<"|____________________________________________________|"<<endl; cout <<"1.NHAP THONG TIN MON HOC"<<endl;
cout <<"2.NHAP THONG TIN SINH VIEN"<<endl; cout <<"3.XEM THONG TIN SINH VIEN"<<endl; cout <<"4.TIM KIEM THONG TIN SINH VIEN"<<endl; cout <<"5.THONG KE THONG TIN SINH VIEN"<<endl; cout <<"0.THOAT"<<endl;
cout <<"CHON CHUC NANG: "<<endl; cout<<"|
____________________________________________________|"<<endl; cin >> luachon;
bool daThucHien = false; switch (luachon) { case 0:
cout<<"CAM ON DA SU DUNG !"<<endl; break;
case 1:
s.setMonhoc(); daThucHien = true; break;
case 2:
s.nhapthongtin(); daThucHien = true; break;
</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">break; case 4:
break; case 5:
break; default:
cout<<"LUA CHON SAI"<<endl; break;
}
} while (luachon != 0);return 0;
<b>VIII. Nhận xét:</b>
</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17"> Bài tập nằm trong phạm vi kiến thức đã được học
Nhóm đã tiến hành chạy code thử và thấy code chạy bình thường ở thời điểm hiện tại
Các lỗi và sự cố được ghi nhận và khắc phục kịp thời
<b>Ý kiến của giảng viên bộ mơn: </b>
Thầy/cơ có ý kiến hay nhận xét giúp nhóm em cải thiện hơn có thể liên hệ với nhóm em qua gmail
Nhóm em rất mong nhận được nhận xét của thầy/cô!
Hà Nội, ngày…tháng…năm 2024 Phê duyệt
</div>