Báo cáo bài tập lớn Cấu trúc dữ liệu và giải thuật – Quản lý thu thuế Báo cáo bài tập lớn Cấu trúc dữ liệu và giải thuật – Quản lý thu thuế Báo cáo bài tập lớn Cấu trúc dữ liệu và giải thuật – Quản lý thu thuế Báo cáo bài tập lớn Cấu trúc dữ liệu và giải thuật – Quản lý thu thuế Báo cáo bài tập lớn Cấu trúc dữ liệu và giải thuật – Quản lý thu thuế
MỤC LỤC Xác định toán I II Đối tượng quản lý toán gồm: III Xác định thuật toán Danh sách liên kết đơn .3 1.1 Nhập danh sách: 1.2 In danh sách: .4 1.3 Tìm kiếm hóa đơn có mã x .5 1.4 Sắp xếp: Danh sách liên kết đôi: .8 2.1 Xử lý nhập: 2.2.In danh sách: 2.3 Xóa sản phẩm cuối danh sách 3.Ngăn xếp 10 3.1.Nhập danh sách file .10 3.2.In danh sách 11 3.3Xóa phần tử đầu .12 3.4.Đếm phần tử ngăn xếp 12 3.5Tìm kiếm 13 3.6.Đếm phần tử ngăn xếp 14 4.Hàng đợi: 14 4.1Nhập danh sách .15 4.2Xuất danh sách .16 IV Cài đặt chương trình 18 Danh sách liên kết đơn (Quản lý người nộp thuế) .18 Danh sách liên kết đôi (Quản lý phiếu thu) 29 I Xác định tốn Bài tốn Quản lí thuế nhằm hỗ trợ cho nhân viên nắm rõ thông tin khách hàng, mặt hàng, hóa đơn hàng nhằm giúp cho việc quản lý hoạt động cửa hàng thuận tiện nhanh chóng Đồng thời tốn quản lí bán hàng cịn giúp nhân viên cửa hàng bán sách xếp thống kê khách hàng II Đối tượng quản lý toán gồm: Người đóng thuế, phiếu thu Trong đó: Người đóng thuế: mã người đóng thuế, mã thuế, tên cơng ty, địa chỉ, diện tích, quy mơ, người đứng đầu Phiếu thu: mã phiếu thu, ngày lập, tháng, năm, số tiền cần nộp, số tiền giảm trừ, mã người nộp thuế, họ tên người đóng, số tiền cần đóng = tổng tiền – số tiền giảm trừ Quản lý thu thuế Hà Nội Người đóng thuế 1.Nhập thơng tin: mã người đóng thuế, mã thuế, tên cơng ty, địa chỉ, diện tích, quy mơ, người đứng đầu 2.In danh sách người đóng thuế 3.Lưu DS người đóng thuế vào file 4.Đọc DS người đóng thuế từ file 5.Tìm kiếm người đóng thuế theo mã 6.Sắp xếp theo diện tích 7.Xố người đóng thuế theo mã 8.Thêm người đóng thuế 9.Cho danh sách cơng ty có địa Hà Nội III Phiếu thu 1.Nhập thông tin: mã phiếu thu, ngày lập, tháng, năm, số tiền cần nộp, số tiền giảm trừ, mã người nộp thuế, tổng tiền=số tiền cần nộp - tiền giảm trừ, người lập 2.In DS phiếu thu 3.Lưu DS phiếu thu vào file 4.Đọc DS phiếu thu từ file 5.Tìm kiếm phiếu theo mã phiếu thu 6.Sắp xếp phiếu theo tiền phải đóng tăng dần 7.Xố phiếu 8.Sửa phiếu Xác định thuật toán Danh sách liên kết đơn Để thực chức ta cần: Khai báo cấu trúc liệu Khai báo cấu trúc nút danh sách liên kết đơn Khai báo danh sách liên kết đơn Khởi tạo danh sách rỗng Tạo nút với thành phần liệu x 1.1.Nhập danh sách: * Mơ tả thuật tốn: o Nhập n danh sách thông o Cho i chạy từ i=1->n, in kết thúc thuật tốn * Sơ đồ thuật tốn: 1.2.In danh sách: *Mơ tả thuật tốn: Duyệt từ đầu đến cuối danh sách Với lần duyệt, xuất hình thơng tin khách hàng *Sơ đồ thuật tốn: 1.3 Tìm kiếm hóa đơn có mã x *Mơ tả thuật tốn: •Bước 1: p = DQ.Head; •Bước 2: Lặp (p!=NULL) (p->infor.ma != x) p = p -> Next; •Bước 3: oNếu p != NULL p trỏ đến phần tử cần tìm oNgược lại khơng tìm thấy phần tử cần tìm *Sơ đồ thuật tốn : 1.4 Sắp xếp: *Mơ tả thuật tốn: + Mơ tả thuật tốn: Sử dụng trỏ p, q dể duyệt so sánh với p = Q.Head; Lặp (p != NULL) q = p -> next; Lặp (q != NULL) So sánh giá trị phần tử p q không trật tự hốn đổi giá trị p q cho Vd: Sắp xếp tăng dần, p -> infor.tt > q -> infor.tt (p-> infor.tt , q -> infor.tt); q = q -> next; op = p -> next; *Sơ đồ thuật toán: Sai p != NULL Đúng q = p -> next Sai q !=NULL Đúng Sai p->infor.tt > q->infor.tt Đúng Hoandoi (p->infor.tt,q->infor.tt) q = q->next p = p->next Kết thúc Danh sách liên kết đôi: 2.1 Xử lý nhập: + Mơ tả thuật tốn Khởi tạo danh sách rỗng Tạo nút p với thành phần liệu x Nhập n sản phẩm Duyệt từ i=1 đến in kết thúc + Sơ đồ thuật tốn: