1. Trang chủ
  2. » Luận Văn - Báo Cáo

bài tập đồ án báo cáo nội dung giữa kì cấu trúc thể hiện thông tin của danh sách sinh viên nhận được học bổng

12 1 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 889,17 KB

Nội dung

BO TAI CHINH TRUONG DAI HOC TAI CHINH -MARKETING KHOA CONG NGHE THONG TIN TRƯỜNG ĐẠI HỌC TÀI CHÍNH - MARKETING BÀI TẬP ĐỎ ÁN BÁO CÁO NỘI DUNG GIỮA KÌ NỘI DUNG_CHỦ ĐÈ: CAU TRU

Trang 1

BO TAI CHINH TRUONG DAI HOC TAI CHINH -MARKETING KHOA CONG NGHE THONG TIN

TRƯỜNG ĐẠI HỌC TÀI CHÍNH - MARKETING

BÀI TẬP ĐỎ ÁN BÁO CÁO NỘI DUNG GIỮA KÌ

NỘI DUNG_CHỦ ĐÈ:

CAU TRUC THE HIEN THONG TIN CỦA DANH SÁCH

SINH VIEN NHAN DUOC HOC BONG

GVHD: Th.S Nguyén Quéc Thanh

SVTH: Nguyễn Doan Trường

MSSV: 2221004344

Lé6p: 22DHTO01

Trang 2

Lời cảm ơn

Lời đầu tiên em xin chân thành cảm ơn nhà trường đã hỗ trợ em hết mình trong công cuộc dạy và học cũng như Thầy, Cô của khoa Công Nghệ Thông Tin thuộc trường Đại học Tài Chính- Marketing đã hướng dẫn và truyền đạt đề giúp em có được môi trường

học tập tốt nhất

Em xin chân thành cảm ơn đến Giảng viên Nguyễn Quốc Thanh, người đã giúp đỡ em giải đáp những thắc mắc trong quá trình học tập và làm đỗ án

Chỉ mới vào đại học kông lâu nên những kiến thức về tiêu luận của em còn hạn chế nên khó tránh khỏi những sai sót Kính mong nhận được sự nhận xét cũng như góp ý, phê bình từ phía Thầy để em có thê hoàn thiện bài tiêu luận hơn những lần tiếp theo

Lời cuối cũng em xin chân thành cảm ơn và kính chúc Thầy một ngày mới thật là tốt lành, nhiêu niêm vui và sức khỏe trong cuộc sông Em xin trân trọng cảm ơn

Trang 3

Báo Cáo CTDL&GT- Nguyễn Đoan Trường

MỤC LỤC

CHƯƠNG l1: GIỚI THIỆU 2 + E2 12E157122111102110 11212121 1212 n ng Hán re ng He no 4

(ch 4

"cố ố ốố cố cố ốc 4

a) _ Thông tin sinh viên cân quản Ìí; - c5 12 1211211111211 1121 1022121 12t no 4

b) _ Cấu trúc dữ liệu hỗ trợ quản lí thông tin sinh viên - 5 SE E1 n2 212tr yeu 4

e) _ Định nghĩa câu trúc sinh viên s22 E2 HH HE t1 221 g2 HH re rau 4

3 Dữ liệu mẫu - ¿22 221221 1112211 nà Hành HH ngu ke 6

4, Cac chite ni nên ((4ăăăăăăăă

CHƯƠNG 2 : CHỨC NĂNG TRÊN DANH SÁCH

1 _ Nhập danh sách thông tin sinh vIÊH - c2 2211223121121 321 1211 11111111015111 012011 111221162811 vky 7 a) Chương trinh €OI L1 c1 21121 112112111111111 111101101515 T15 111 HH TH HH HH Hà he, 7 6 8 Ẽn 10

» ‹ Tra a 11

3 RGGI ccc ceecseseeessssescsssnscesssnecsnssesessesccssssecsnnseesnineesssseeseareseecurcteaneeaniieseuteeesnecen 12

a) Các chức năng d& thare W161 cece C201 21 1211213111111 1151151 19151111111 111 8111151111 1 1111k key 12 b) Các chức năng chưa thực hiện ( không ) 5 - 1022211211 251251 1921111111 11111 811115 t1 tre 12

Trang 4

DANH MUC BANG

DANH MỤC HÌNH

HÌnh 2 1 Kết quả test chương trình con nhập/xuẤt ó5 6266 926213421111121112111212111121121 11 2e 12

HÌnh 2 2 Kết quả test chương trình con tìm kiếm 13

Trang 5

Báo Cáo CTDL&GT- Nguyễn Đoan Trường

CHUONG 1: GIOI THIEU

1 Giới thiệu chủ đề

Cấu trúc thể hiện thông tin của danh sách sinh viên được nhận học bồng : Mã số sinh viên, Họ, Tên SV; Khéa hoc; Điểm trung binh và mức học bồng (triệu đồng)

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)

a)

b —

c)

Thông tin sinh viên cân quản lí;

MSSV : mã số sinh viên, là các kí tự số có chiều đài tối đa 5 ký tự

Ho : họ sinh viên, là các kí tự chữ có chiều dài tối đa 10 kí tự

Ten : tên sinh viên, là các kí tự chữ có chiều dải tối đa L0 kí tự

Khoa: là khoá học của sinh viên, là chuỗi các kí tự chữ hoặc chuỗi ký tự SỐ,

tối đa 4 kí tự

DTB : là điểm trung bình của sinh viên, có thể là số nguyên hoặc số thập phân

Hocbong : la số tiền sinh viên nhận được khi đạt học bồng, là chuỗi các ký

tự so

Cấu trúc đữ liệu hỗ trợ quản lí thông tin sinh viên

MSSV : chuỗi tối đa 4 kí tự Ho: chuỗi tối đa 10 kí tự Ten: chuỗi tối đa 10 ký tự Khoa : chuỗi tối đa 4 ký tự DIB : số thực

Hocbong : chuỗi tối đa 10 ký tự Định nghĩa câu trúc sinh viên

struct Sinh_ Vien

{

char MSSV[5], Ho[10], Ten[10], Khoa[4];

char Hocbong [10];

float DTB;

Trang 6

3 Dữ liệu mẫu ( >= I0 thông tin đối tượng cần quản lý)

Bang 1 1 DU LIEU MAU

4 Các chức năng sẽ xây dựng

Các chức năng trên mảng cấu trúc:

- _ Nhập thông tin sinh viên

- _ Xuất thông tin sinh viên

- Tim th6ng tin sinh vién theo MSSV ( dung Linear Search và Binary Search)

Trang 7

CHUONG 2 : CHUC NANG TREN DANH SACH

1 Nhập danh sách thông tín sinh viên

a) Chương trình con

- void nhap_o(Sinh Vien& a): hé trợ nhập thông tin một sinh viên gồm mã số sinh viên, „ họ sinh viên, tên sinh viên, khoá học, điểm trung bình và mức học bồng

- void nhap mang(Sinh Vien af], int n): hé trọ nhập danh sách thông tin sinh vién

Trang 8

/ CTC Nhập ô cầu trúc

void nhap o(Sinh Vien&š a)

{

}

cout << "Nhap ma so sinh vien : " << endl;

cin.getline(a.MSSV, 5);

cout << "Nhap ho sinh vien : " << endl;

cin.getline(a.Ho, 10);

cout << "Nhap ten sinh vien : " << endl;

cin.getline(a.Ten, 10);

cout << "Nhap khoa hoc : " << endl;

cin.ignore();

cin.getline(a.Khoa, 4);

cout << "Nhap diem trung binh : " << endl;

cin >> a.DTB;

cout << "Nhap muc hoe bong : " << endl;

cin.ignore();

cin.getline(a.Hocbong, 12);

/ICTC nhap mảng cấu trúc

void nhap mang(Sinh Vien a{[], int n)

{

for (inti =0;1<n; i++)

{

cout << "Nhap sinh vien thu : " <<1 + 1 << endl;

nhap_o(ali]);

cout << endl;

Đề xuất danh sách sinh viên nhận học bông, cần xây dựng 2 chương trình con gồm:

- void xuat_o(Sinh Vien a): hỗ trợ xuất ra màn hình thông tin | sinh viên đã

nhập gồm mã số sinh viên, , họ sinh viên, tên sinh viên, khoá học, điểm trung binh và mức học bông

void xuat_mang(Sinh Vien af], int n): h6 trợ xuất ra màn hình danh sách các

sinh viên nhận học bông đã nhập gôm mã số sinh viên, , họ sinh viên,

- _ tên sinh viên, khoá học, điểm trung binh và mức học bồng

/ICTC xuat 6 cau trúc

void xuat_o(Sinh Vien a)

{

Trang 9

Báo Cáo CTDL&GT- Nguyễn Đoan Trường

cout << "Ma so sinh vien : " << a.MSSV << endl;

cout << "Ho sinh vien : " << a.Ho << endl;

cout << "Ten sinh vien : " << a,Ten << endl;

cout << "Khoa hoe : " << a.Khoa << endl;

cout << "Diem trung binh : " << a.DTB << endl;

cout << "Muc hoc bong : " << a.Hoebong << endl;

}

/CTC xuât mảng câu trúc ( danh sách sinh viên )

void xuat_mang(Sinh Vien af], int n)

{

Cout << ”====~=================== " << endl;

cout << "Danh sach sinh vien : " << endl;

for (inti =0;1<n; i++)

{

cout << "\nThong tin sinh vien thu "<<1i+ 1 << endl;

xuat_o(afi]);

}

cout << endl;

}

Đề thực hiện chức năng tìm kiếm sinh viên nhận được hồng bồng cần xây dựng các chương trình con, cụ thê là LinearySearch và BinarySearch, gồm

- intLinearSearch(Sinh Vien ar[].int n, char x[J): Hỗ trợ tìm kiếm I phần tử

trong mảng theo cách tìm kiếm tuyến tính, cự thê là so sánh phần tử cần tìm với phần tử thứ nhất, thứ 2 của danh sách đến khi tìm được phần tử cần tìm

- int LinearSearchl(Sinh Vien ar[], int n, char x[]): Hỗ trợ tương tự như

LinearSearch nhưng được cải tiến

- int binarySearchString(Sinh Vien an[], char x[] int n): Hỗ trợ tìm kiếm I

phần tử trong mảng sắp xếp theo thứ tự tang băng cách tìm kiếm nhị phân, cụ thé là so sánh phần tử cần tìm với phần tử ở giữa của mảng ( mảng được chia rah ai phan bên trái và phải của phần tử đó ) Nếu chúng không bang nhau, một nửa không chứa mục tiêu sẽ bị bỏ đi Và việc tìm kiếm sẽ tiếp tục ở phần còn lại, một lần nữa lấy phần tử ở giữa được chọn đề so sánh với phần tử cần tìm và

lap lại điều này cho đến khi tìm thấy phần tử cần tìm

// tìm kiếm tuyến tính thông qua MSSV

int LinearSearch(Sinh Vien arr[], int n, char x[])

{

for (int i =0;1<n; i++)

if (stremp(arr[i] MSSV, x) == 0)

Trang 10

return 1;

}

return -1;

}

/tảm kiếm tuyến tính cải tiên

int LinearSearch1(Sinh Vien arr[], int n, char x[])

{

inti =0;

while (stremp(arr[i] MSSV, x) !=0 && stremp(arr[n - 1 - 1] MSSV,x ) !

=0 &&i<n/2)

i++;

if (stremp(arr[i] MSSV, x) == 0) return 1;

if (stremp(arr[n - 1 - 1].MSSV, x) == 0) return n- 1-1;

return -1;

}

/ủm kiểm nhị phân thong qua MSSV

int binarySearchString(Sinh Vien arr[], char x[], int n)

t

int lower = 0;

int upper = n - 1;

while (lower <= upper) { int mid = (upper + lower) / 2;

if (stremp(arr[mid].MSSV, x) == 0) return mid;

if (stremp(arr[mid].MSSV, x) < 0) lower = mid + 1;

else upper = mid - 1;

}

return -1;

}

b)Kiếm tra ( hàm main kiêm tra chương trình con )

int main()

t

const int sopt = 3;

Sinh_ Vien dssv[sopt];

nhap mang(dssv, sopt);

xuat_mang(dssv, sopt);

char x[5];

cout << "nhap MSSV can tim: " << endl;

cin.getline(x, 5);

int kq = LinearSearch(dssv, sopt, x);

if (kq !=-1)

cout << "\t\t -KET QUA TIM KIEM -" << endl:

xuat_o(dssv[kq]);

10

Trang 11

Báo Cáo CTDL&GT- Nguyễn Đoan Trường

else cout << "KHONG CO THONG TIN!!";

2 Két qua chay

Hinh 2 1 Kết quả test chương trình con nhập/xuất

sinh v1

tin sinh vì sinh

11

Trang 12

HÌnh 2.2 Kết quả test chương trình con tìm kiếm

QUA TIM KIEM -

sinh

a hoc Diem trung

¬ luc hoc

3 Kết luận

a) Các chức năng đã thực hiện

- _ Nhập/xuất đữ liệu trong mảng

- Tim kiém phan tir bang ham LinearSearch va BinarySearch b) Các chức nang chưa thực hiện ( không )

KET THUC NOI DUNG BAO CAO

12

Ngày đăng: 02/07/2024, 17:27

TỪ KHÓA LIÊN QUAN

w