TRƯỜNG ĐẠI HỌC TÀI CHÍNH -MARKETING KHOA CÔNG NGHỆ THÔNG TIN TRƯỜNG ĐẠI HỌC TÀI CHÍNH - MARKETING BÀI TẬP BO AN BAO CAO NOI DUNG GIT ki NOI DUNG... MUC LUC HINH Hinh 2.1 Két qua n
Trang 1TRƯỜNG ĐẠI HỌC TÀI CHÍNH -MARKETING KHOA CÔNG NGHỆ THÔNG TIN
TRƯỜNG ĐẠI HỌC TÀI CHÍNH - MARKETING
BÀI TẬP BO AN BAO CAO NOI DUNG GIT ki
NOI DUNG _CHU DE:
CAU TRUC QUAN Li DANH SACH NHAN VIEN
GVHD: Th.S Nguyễn Quốc Thanh
SVTH: Hoàng Lâm Thu Phương
MSSV: 2221004265
Lớp: 22DHT0I
Trang 2
MUC LUC CHUONG 1: GIGT THIEU, ccsssssssssssssssssssscsscssseacsssssssencsssencsncenceacsaseaesescaseeneesseneacaseaes 1
1.1 Giới thiệu chủ đề: c2 nhu ng 1 1.2 Cau tric: ( mô tả cầu trúc được yêu cầu, chọn CTDL đề thê hiện, khai báo/ định nghĩa câu fTÚC) - c1 01221121211 221 1111111111011 1 1111811101111 111111111 k 1H kg chư 1 1.3 Dữ liệu mẫu: : - 5: 2t EHHnHnHHHhghHưàg 2 1.4 Các chức năng: liệt kê các chức năng sẽ xây dựng c2 c2 nhe 2
CHƯƠNG 2: CHỨC NĂNG TRÊN DANH SÁCH SỬ DỤNG ARRAY 3
2.1 Nhập danh sách nhân viên - L0 22 1221122112211 1111 11211151 111221111112 11 1H se 3 2.1.1 Chương trình com - 20 2211212121 111 111121112111 1118111811201 111 1111 n can ệt 3 2.1.2 KiỂm tra - 22 c2 22 tt 211tr H1 HH ưa 4
2.1.3 Kết quả chạy - 5c c1 1 1121111 11211111 11211 1 1111 ng He 5
2.2 Xuất danh sách nhân viên -:5:c: 22222222211 tt HH ưn 5
2.2.1 Chương trình com - 2012211212121 111 111121110111 1111811181110 1 1111111 yệt 5
2.1.3 Kết quả chạy - 5s 1 1 1112112111111 1 111111212211 1 1 HH Hàng tra 12
2.2 Sắp xếp thông tin theo MSNV (dùng ShakerSort) 5 5 Street 12
2.2.2 KiỂm tTa 222cc 22 tt 1n H1 HH he 13
2.2.3 Kết quả chạy - 5s s1 111211211111 1 11111222211 1 1 HH ng tra 14
2.3 Sắp xếp thông tin theo MSNV (dùng SelectionSort) - cty 15
Trang 1
Trang 32.3.1 Chương trình com - 201121111212 1211121 1112111111011 1111110111211 111101111 15
2.3.3 Kết quả chạy - - s1 1112112111111 1 1111112222111 1n H ng tra 17
2.4 Sắp xếp thông tin theo MSNV (dùng InterchangeSort) ccsccscvcterersrez 18 2.4.1 Chương trình con - 2201121111212 1211101 1112111211101 1 1111111111211 111101111 18 2.4.2 KiỂm tT8 222cc 2 tt HH H1 HH he 18
2.4.3 Kết quả chạy - - s1 1112112121111 1211111012211 1 HH ng tro 19
2.5 Sắp xếp thông tin theo MSNV (dùng BubbleSort) - 5 sec Errerrxe 20 P1 §Ð on 20 2.5.2 KiỂm tT8 :- 22c 222 t2 HH H1 ru HH he 20
2.5.3 Kết quả chạy - - s1 1 1112112111111 1211111222211 1 HH HH ng tra 22
2.6 Sắp xếp thông tin theo MSNV (dùng InsertionSorf) -s 5c stnnsere se 23 2.6.1 Chương trình com - - 221 1211112121211 101 1112111811101 11 11111111251 11111 k1 23 2.6.2 KiỂm tT8 :- 222cc 22 tt 21H HH H1 HH he 23
2.6.3 Kết quả chạy - s1 1112112111111 1 111111222211 1 1 HH ng tra 24
2.7 Sắp xếp thông tin theo MSNV (dùng QuickSort) -.à- c2 Hee 25 2.7.1 Chương trình com - 21 1211112121211 1112111211101 1 181111111211 11111 ke 25 2.7.2 KiỂm tT8 222cc 22 tr H1 ưng he 26
2.7.3 Kết quả chạy - - - s1 1112112112111 11 111111222211 1 111 H ng tra 27
2.8 Sắp xếp thông tin theo MSNV (dùng MergeSort) s.- che 28 2.8.1 Chương trình com c2 1211112121211 1112111211101 1111111111121 1111 ke 28
2.8.3 Kết quả chạy - s1 1112112111111 1 1111122221121 HH nàng tra 32
Trang 11
Trang 4MUC LUC HINH Hinh 2.1 Két qua nhap damh sach.o ccccccccccsscssesccscsscescsecsscssssessesevsnssseecevsevececaesevevsvsesenes 5
Hình 2.2 Kết quả xuất danh sách 2-2 s2 EE2E92E12E1271521211712117121 1111 7 Hình 2.3 Kết quả tìm kiếm LinearSearch - 2 52s 9 E2 EEE212221211211211211 112 rre 9 Hình 2.4 Kết quả tìm kiếm BinarySearch 5à scs2 x2 211511211 1211 111 ro 12 Hình 2.5 Kết quả sắp xếp ShakerSọt - 2 s21 EE11211 1021121112111 tre 14 Hình 2.6 Kết quả sắp xếp SelectionSọr -.- 5 s21 11E112111121211212121EEerrre 17 Hình 2.7 Kết quả sắp xếp InterchangeSort + s2 2 1211271221111 re 19 Hình 2.8 Kết quả sắp xếp BubbleSorr - 5 St St E1211211211211211 12121 rre 22 Hình 2.9 Kết quả sắp xếp InsertionSofr s52 222 tTnEEn.E122121212121812 re 24 Hình 2.10 Kết quả sắp xếp QuickSort 255 22 122 1 2121121121121 121 re 27 Hình 2.11 Kết quả sắp xếp MergeSOrI 5 S222 2112212112110 02121121121 En re 32
Trang 11
Trang 5MUC LUC BANG
Bang 1.1 Dit Qu Mau cecccccccceeececeeeecesceeseesvsvsevsesevsvssesvsussesusessseceesetesivevecevscenes
Trang iv
Trang 6CHUONG 1: GIOI THIEU
BEG i6i thiéu chu dé:
Cau trúc quản lý danh sách nhân viên qua các thông tin: Mã số nhân viên; Họ; Tên nhân viên; Năm sinh; Lương và Tiên phụ cấp
1.2 Cấu trúc: ( mô tả cầu trúc được yêu cầu, chọn CTDL để thể hiện, khai báo/ định nghĩa cấu trúc)
Thông tin nhân viên cần quản lí:
-MSNV: Mã số nhân viên, là các kí tự số có chiều dài tối đa 10 kí tự
-Ho: Họ, bao gồm cả tên đêm, là các kí tự chữ có chiều dài tối da 30 kí tự
-Ten: Tên là các kí tự chữ có chiều dài tối đa 10 kí tự
-Namsinh: Năm sinh của nhân viên
-LuongVaPhuCap: Số tiền lương và phụ cấp mà nhân viên nhận được
Câu trúc dữ liệu hỗ trợ quản lí danh sách nhân viên:
-MSNV: chuỗi tối đa 10 kí tự
-Ho: chuỗi tối đa 30 kí tự
-Ten: chuỗi tôi đa 10 kí tự
Trang 7
Di ligu mau:
Bang 1.1 D ti @ maau
HỌ VÀ TÊN | HoangLam | Ngo Thanh | Bui Khanh Nguyen
Các chức năng trên mảng cấu trúc:
Nhập thông tin nhân viên
Xuất thông tin nhân viên
Tìm thông tin nhân viên theo MSNV ( dung Linear Search )
Tìm thông tin nhân viên theo MSNV ( dung Binary Search)
Sắp xếp thông tin theo MSNV (dùng ShakerSort)
Sắp xếp thông tin theo MSNV (dùng SelectionSort)
Sắp xếp thông tin theo MSNV (dùng InterchangeSort)
Sắp xếp thông tin theo MSNV (dùng BubbleSort)
Sắp xếp thông tin theo MSNV (dùng InsertionSort)
Sắp xếp thông tin theo MSNV (dùng QuickSort)
Sắp xếp thông tin theo MSNV (dùng MergeSort)
Trang 2
Trang 8CHUONG 2: CHUC NANG TREN DANH SACH SU
—_ void nhap DSNV(DSNV nv†[], int n): hỗ trợ nhập danh sách nhân viên
//ctc nhap o cau truc
void nhap o(DSNV& nv)
cout << "Nhap Luong va tien phu cap: ”;
cin >> nv.Luong VaPhuCap;
Trang 3
Trang 9}
//ctc nhap mang cau truc
void nhap DSNV(DSNYV nvf], int n)
Trang 102.1.3 Kêt quả chạy
Hinh 2.1 Kéét qua nhậ p danh sách
Nhap so luong nhan uien: 3
thong tin nhan vien thu 1
MSNU: 234
Ho ten dem: bui khanh
Ten: duụ
Nam sinh: 2884
Luong va tien phu cap: 23453
thong tin nhan uien thu 2
HSNU: 253
Ho ten dem: nguyen kim
I0 (000
Nan sinh: 2884
Luong va tien phu cap: 345632
thong tin nhan uien thu 3
HSNU: 312
Ho ten dem: nguyen tuan
Ten: bao
Nam sinh: 2884
Luong va tien phu cap: 234321
iC :\Users\PC\source\re pos\Pro ject3\x64\Debug\Project3.exe Cprocess 25123 exited Bae mts ee
To automatically close the console when debugging stops enable Tools—>Options— Debugging—>Automatically close the console when debugging stops
Press any key to close this window
MBX uat danh sách nhân viên
2.2.1 Chuong trinh con
Đề xuất danh sách nhân viên của các nhân viên, cần xây dựng hai chương trình con gồm: void xuat_o(DSNV nv): hé tro nhap thong tin mét nhan viên gồm MSNV, họ tên đệm, tên, năm sinh, lương và phụ cấp
void xuat DSNV(ĐSNV ny[], int n): hỗ trợ xuất danh sách nhân viên
//Xuat 6 cau trúc
void xuat_o(DSNV nv)
{
cout << "MSNV: " << nv.MSNV << endl;
cout << "Ho ten dem: " << nv.Ho << endl;
cout << "Ten: " << nv.Ten << endl;
Trang 5
Trang 11cout << "Nam sinh: " << ny.Namsinh << endl;
cout << "Luong va tien phu cap: " << nv.LuongVaPhuCap << endl;
}
//Xuat mang cau tric
void xuat DSNV(DSNV nvf{], int n)
Trang 122.2.3 Ket qua chay
Hình 2.2 Kéét qu axuaét danh sách
Nhap so luong nhan vien: 3
thong tin nhan vien thu 1
MSNU: 234
Ho ten dem: bui khanh
Ten: duu
Nan sinh: 2884
Luong ua tien phu cap: 23453
thong tin nhan uien thu 2
HSNU: 253
Ho ten dem: nguyen kin
Ten: dung
Nan sinh: 2884
Luong ua tien phu cap: 345632
thong tin nhan uien thu 3
HSNU: 312
Ho ten dem: nguyen tuan
Ten: bao
Nan sinh: 2884
Luong ua tien phu cap: 234321
DANH SACH NHAN UIEN
Thong tin nhan vien thu 1
MSNU: 234
Ho ten dem: bui khanh
Ten: duụ
Nam sinh: 2884
Luong va tien phu cap: 23453
Thong tin nhan vien thu 2
MSNU: 253
Ho ten dem: nguyen kin
Ten: dung
Nam sinh: 2884
Luong va tien phu cap: 345632
Thong tin nhan vien thu 3
MSNU: 312
Ho ten dem: nguyen tuan
Ten: bao
Nan sinh: 2884
Luong va tien phu cap: 234321
Mim thong tin nhan vién theo MSNV ( ding Linear Search )
2.3.1 Chuong trinh con
int LnearSearch(DSNV nv{], int n, char x[10])
{
inti=0;
strepy_s(nv[n].MSNV, x);
Trang 7
Trang 13while (stremp(nv [i] MSNV, x) != 0)
cout << "\t\t\tDANH SACH NHAN VIEN BAN DAU\n";
nv[0] = { "123","Hoang Lam Thu","Phuong"”,1996, 19000 };
Trang 14cout << "\tNhan vien can tim la nhan vien thu " <<kq + 1 << endl; cout << "\tThong tin nhan vien nay la:" << endl;
Luong va tien phu cap:
Nhap ma so nhan vien can tim:
Nguyen Tuan
Hinh 2.3 Kéét qu aim kiéém LinearSearch DANH SACH NHAN UIEN BAN DAU vien thu 1
Lam Thu
19898 vien thu 2
26688 uien thu 3
I2) vien thu 4
13648
alg Nhan vien can tim la nhan vien thu 4
Thong tin nhan
Trang 151.1 Tìm thông tin nhân viên theo MSNV ( dung Binary Search)
int mid = (left + right) / 2;
while (left <= nght && stremp(nv[mid].MSNV, x) != 0)
{
if (stremp(nv[mid].MSNV, x) > 0)
right = mid - 1;
else left = mid + 1;
mid = (left + right) / 2;
Trang 16cout << "\t\t\tDANH SACH NHAN VIEN BAN DAU\n";
nv[0] = { "123","Hoang Lam Thu","Phuong"”,1996, 19000 };
Trang 172.3.6 Ket qua chay
Hinh 2.4 Kếết qu aim kiéém BinarySearch DANH SACH NHAN UVIEN BAN DAU Thong tin nhan vien thu 1
MSNU: 123
Ho ten dem: Hoang Lam Thu
Ten: Phuong
Nam sinh: 1996
Luong va tien phu cap: 19888
Thong tin nhan vien thu 2
MSNU: 227
Ho ten dem: Nguyen Tuan
HN
Nam sinh: 2883
Luong ua tien phu cap: 13648
Thong tin nhan vien thu 3
MSNU: 234
Ho ten dem: Ngo Thanh
I1 HE
Nam sinh: 1995
Luong va tien phu cap: 26606
Thong tin nhan vien thu 4
MSNU: 383
Ho ten dem: Bui Khanh
Ten: Duụ
Nam sinh: 2884
Luong va tien phu cap: 15666
Nhap ma so nhan vien can tim: 383
Nhan vien can tim la nhan vien thu 4
Thong tin nhan vien nay la:
MSNU: 383
Ho ten dem: Bui Khanh
Ten: Duụ
Nam sinh: 2884
Luong va tien phu cap: 15888
NNEăp xép thong tin theo MSNV (ding ShakerSort)
2.4.1 Chuong trinh con
void ShakerSort(DSNV af], int n)
Trang 18for (int i= right; i > left; i )
cout << "DANH SACH NHAN VIEN BAN DALUAn":
nv[0] = { "123","Hoang Lam Thu","Phuong",1996, 9000 }:
Trang 13
Trang 19nv[1] = { "234","Ngo Thanh","Van",1995,20000 };
nv[2] = { "383","Bui Khanh","Duy",2004,15000 };
nv[3] = { "227","Nguyen Tuan","Bao",2003,13640 };
xuat _DSNV(ny, n);
cout << "\n\t\t\tDANH SACH NHAN VIEN SAU SAP XEP" << endl;
cout << "\n\t\t\t\t -ShakerS ort -" << endl;
ShakerSort(nv, n);
xuat _DSNV(ny, n);
retum 0;
2.4.3 Ket qua chay
Hinh 2.5 Kéét qu aaép xéép ShakerSort DANH SACH NHAN UIEN BAN DAU Thong tin nhan vien thu 1
IS
Ho ten dem: Hoang Lam Thu
Ten: Phuong
Nam sinh: 1996
Luong va tien phu cap: 19888
Thong tin nhan vien thu 2
MSNU: 234
Ho ten dem: Ngo Thanh
Ten: Uan
Nam sinh: 1995
Luong va tien phu cap: 28888
Thong tin nhan vien thu 3
MSNU: 383
Ho ten dem: Bui Khanh
Ten: Duụ
Nam sinh: 2884
Luong va tien phu cap: 15888
Thong tin nhan vien thu 4
Trang 20DANH SACH NHAN UIEN SAU SAP KEP
——-ShakerSort———
Thong tin nhan vien thu 1
: Hoang Lam Thu
Phuong
Nam sinh: 1996
Luong va tien phu cap: 19888
Thong tin nhan uien thu
: Nguyen Tuan
Nam sinh: 2883
Luong ua tien phu cap: 13648
Thong tin nhan uien thu
MSNU: 234
Ho ten dem: Ngo Thanh
Ten: Uan
Nam sinh: 1995
Luong va tien phu cap: 26000
Thong tin nhan vien thu
NNEăắp xép thong tin theo MSNV (ding SelectionSort)
2.5.1 Chuong trinh con
void SelectionSort(DSNV af], int n)
Trang 21cout << "\t\t\tDANH SACH NHAN VIEN BAN DAU\n";
nv[0] = { "123","Hoang Lam Thu","Phuong"”,1996, 19000 };
nv[1] = { "234","Ngo Thanh","Van",1995,20000 };
nv[2] = { "383","Bui Khanh","Duy",2004,15000 };
nv[3] = { "227","Nguyen Tuan","Bao",2003,13640 };
xuat _DSNV(ny, n);
cout << "\n\t\t\tDANH SACH NHAN VIEN SAU SAP XEP" << endl;
cout << "\n\t\t\t\t -SelectionSort -" << endl;
SelectionSort(nv, n);
xuat _DSNV(ny, n);
retum 0;
Trang 16
Trang 22Hinh 2.6 Kéét qu sắếp xếếp SelectionSort DANH SACH NHAN UIEN BAN DAU Thong tin nhan vien thu 1
SNU: 123
o ten dem: Hoang Lam Thu
en: Phuong
am sinh: 1996
Luong va tien phu cap: 19000
Thong tin nhan vien thu 2
Luong ua tien phu cap: 28888
Thong tin nhan vien thu 3
383
o ten đem: Bui Khanh
Luong va tien phu cap: 156686
Thong tin nhan vien thu 4
Nguyen Tuan
Luong va tien phu cap: 13648
DANH SACH NHAN UIEN SAU SAP XEP
Luong va tien phu cap: 19888
Thong tin nhan vien thu
MSNU: 227
Ho ten dem: Nguyen Tuan
Ten: Bao
Nam sinh: 2883
Luong va tien phu cap: 13648
Thong tin nhan uien thu
MSNU: 234
Ho ten dem: Ngo Thanh
Ten: Uan
Nam sinh: 1995
Luong va tien phu cap: 26600
Thong tin nhan vien thu
Bui Khanh
Nam sinh: 2884
Luong va tien phu cap: 15888