GV: NguyÔn Thµnh NghÜa BÀI TẬPTHỰCHÀNH FOXPRO Cho tệp HOCSINH.DBF có cấu trúc như sau: HOTEN CHARACTER 25 NGAYSINH DATE 8 GIOITINH LOGICAL 1 TOAN NUMERIC 4 1 LY NUMERIC 4 1 HOA NUMERIC 4 1 TONG NUMERIC 4 1 XEPLOAI CHARACTER 5 Bài 1: Viết chương trình nhập dữ liệu cho tệp HOCSINH.DBF trong một cửa sổ tự tạo, các trường nhập theo chiều đứng. Yêu cầu: - Cho phép sửa dữ liệu vừa nhập - Cho phép nhập tiếp bản ghi khác - Cho phép thoát trong trường hợp thôi nhập. Bài 2: Lập trình để sửa thông tin một bản ghi tùy ý thông qua một thủ tục sửa. Yêu cầu: - Cho phép xem thông tin cũ - Cho phép sửa dữ liệu vừa nhập - Cho phép sửa tiếp người khác - Cho phép thoát khi ấn một phím nhất định Bài 3: Lập trình để chèn một bản ghi vào một vị trí tùy ý trong tệp. Yêu cầu: - Cho phép chọn chèn trước, chèn sau một bản ghi. - Cho phép sửa dữ liệu vừa nhập - Cho phép thoát hoặc chèn tiếp. Bài 4: Lập trình để xóa một bản ghi tùy ý. Yêu cầu: - Thông báo sai nếu nhập bản ghi ngoài khoảng. - Cho hiện thông tin của người cần xóa trong 1 cửa sổ tự tạo theo chiều đứng. - Cho phép khôi phục lại nếu phát hiện xóa sai người. - Cho phép thoát hoặc xóa tiếp. Bài 5: Lập trình xem thông tin tổng quan của danh sách thí sinh. Yêu cầu: - Mỗi trang màn hình 20 người, mỗi trang có hàng tiêu đề: STT HỌ VÀ TÊN - Những người đạt loại giỏi cho hiện chữ vàng trên nền đỏ. - Ấn S: xem trang sau, ấn T: xem trang trước, R: để thoát. Nếu ấn S mà ở trang cuối thì thông báo ‘Đang ở trang cuối, không có trang sau’, nếu ấn T mà ở trang đầu thì thông báo ‘Đang ở trang đầu’. Bài 6: Lập chương trình để xem chi tiết từng bản ghi. Yêu cầu: - Thông tin hiện lê trong một cửa sổ tự tạo theo chiều đứng, người số 1 xem đầu tiên. - Ấn S: xem người sau, ấn T: xem người trước, N để xem nhanh một người, R: để thoát. - Nếu ấn T mà ở người đầu thì thông báo ‘Đang xem người đầu’. - Nếu ấn S mà ở người sau thì thông báo ‘Đang xem người cuối’. Bài 7: Lập chương trình xử lý kết quả thi. Yêu cầu: - Với chỉ tiêu cho trước, hãy tính điểm chuẩn tương đối. 1 GV: NguyÔn Thµnh NghÜa - Cho xem danh sách những người đậu nhưng bị điểm liệt. - Cho xem danh sách các thủ khoa. - Cho xem danh sách những người đậu (không có những người điểm liệt), những người đạt loại giỏi thì chữ vàng nền xanh. Bài 8: Chương trình tách tên để xem lớp theo abc của tên người. Bài 9: Hãy tạo một menu ngang gồm 6 mục, sao cho khi chọn một mục nào đó thì một lệnh của Foxpro sẽ được thi hành (VD: Browse, Edit, Change .). Yêu cầu: - Có một mục mà khi chọn, sẽ cho xem những người là nữ và sinh ngày 8/3 - Có một mục mà khi chọn, sẽ cho xem những người đạt loại kém. Bài 10: Hãy tạo một menu dọc có 6 mục sao cho khi chọn một mục từ 1 -> 5 thì một lệnh của Foxpro sẽ được thực hiện. Mục 6 nếu chọn sẽ cho xem bảng thống kê điểm của tệp HOCSINH.DBF theo thang điểm 21 bậc từ 0 -> 10, mỗi bậc cách nhau 0.5 điểm. Bài 11: Tạo một hàm để mã hóa xâu ký tự, bằng cách tăng mã ASCII của mỗi ký tự nhập vào n đơn vị. Lập chương trình để mã hóa và giải mã dữ liệu. Yêu cầu: - Có hàm mã hóa xâu ký tự. - Áp dụng để mã hóa trường HOTEN khi nhập dữ liệu. - Có hàm giải mã để xem lại danh sách đã mã hóa. Bài 12: Chương trình in phòng thi (13 người một phòng). Có dạng như sau: SỞ GD & ĐT Cộng hòa xã hội chủ nghĩa Việt nam Nghệ an Độc lập - Tự do - Hạnh phúc -------------------------------------------- HỘI ĐỒNG TUYỂN SINH Phòng thi số: . STT HỌ VÀ TÊN NGÀY SINH SBD SỐ TỜ CHỮ KÝ 1 2 3 4 Giám thị coi thi 1 Giám thị coi thi 2 . . Bài 13: Cho tệp QLCB.DBF với các trường: HOTEN, NGAYSINH, QUEQUAN, GIOITINH, LCHINH, PHUCAP, THUONG, TLUONG, DANHAN, CONLAI. Có các quan hệ sau: Phụ cấp = Lương chính*15% Tổng lương = Lương chính + Thưởng + Phụ cấp Còn lại = Tổng lương - Đã nhận. - Lập trình để xem trong cơ quan có hiện tượng trùng tên hay không, nếu có cho xem thông tin cụ thể về họ. - Hãy đưa ra danh sách những người nghỉ hưu trong năm nay, nếu độ tuổi nghỉ hưu của nữ là 55, nam là 60. - Hãy xem hôm nay có ai sinh nhật không, nếu có hãy gửi thiếp chuc mừng của Công ty đến họ. 2 GV: NguyÔn Thµnh NghÜa Bài 14: Cho tệp KHACHHANG.DBF có các trường HOTEN, SOTIENVAY, NGAYHENTRA, TIENPHAT. Lập trình để xác định những người quá hạn và mỗi người quá hạn thì bị phạt 5% số tiền vay. Tính số tiền mà ngân hàng thu được (giả sử quá hạn một tháng thì bị phạt). Bài 15: Cho danh sách cán bộ HOTEN, LUONGCHINH, THUONG, PHUCAP, BHXH, BHYT, KHUVUC (1,2,3), DANHAN, THUCLINH, CONLAI. Nhập số liệu cho Họ tên, lương chính, thưởng, đã nhận. Viết chương trình tính: Phụ cấp = 25% Lương chính nếu KV 1 = 20% Lương chính nếu KV 2 = 15% Lương chính nếu KV 3 BHXH = 5% Lương chính BHYT = 1% Lương chính Thực lĩnh = Lương chính + Phụ cấp + Thưởng - (BHXH + BHYT) Còn lại = Thực lĩnh - Đã nhận - Tính xem 1 tháng cơ quan phải trả bao nhiêu tiền và tính thu nhập bình quân của cơ quan. - Trong tháng này có ai về hưu chưa: 55 đối với Nữ và 60 đối với Nam. - Tỷ lệ Nam/Nữ trong cơ quan. Bài 15: Cho tệp hàng hóa (Mã hàng, tên hàng, đơn giá, số lượng, giá nhập, giá bán, số đã bán, tồn kho, thành tiền). Viết chương trình: - Nhập vào mã hàng, tên hàng, đơn giá, giá nhập, số lượng, số bán ra. Giá bán = 10% giá nhập + Giá nhập Tồn kho = Số lượng - Số bán ra Thành tiền = Giá nhập*Số lượng Bài 16: Cho tệp THUVIEN.DBF có các trường (Mã sách, tên sách, tên tác giả, tên độc giả, ngày mượn, ngày hẹn trả, đã trả (.T. hoặc .F.)) - Cho tên 1 quyển sách, xác định xem còn hay mất rồi. (Giả sử mỗi đầu sách chỉ có một quyển) - Xác định xem có độc giả nào quá hạn để gửi thông báo về cơ quan. - Cho xem một laọi sách nào đấy theo mã nhập vào từ bàn phím. - Cho tên tác giả, xem các tác phẩm của họ. Bài 17: Cho một tệp HOADON.DBF có cấu trúc gồm các trường: SOHD N(5), Ngày bán hàng: NGAYBAN D, Mã hàng hoá MAHANG C(10), Số lượng hàng bán SOLUONG N(8). Có tệp DONGIA.DBF có cấu trúc như sau: Mã hàng hoá MAHANG C(10), Tên hàng hoá TENHH C(20), G\Đơn giá bán DONGIA N(8). Từ hai tệp chứng từ này, hãy viết chương trình để in ra theo mẫu biểu sau: BẢNG KÊ KHAI HÀNG HOÁ STT Ngày bán Mã hàng hoá Tên hàng hoá Số lượng Đơn giá Thành tiền Tổng cộng Bài 18: Cho 2 cơ sở dữ liệu. Tệp thứ nhất chứa thông tin về tên cửa hàng TEN.DBF gồm các trường: Mã cửa hàng dịch vụ MACH C(5), tên cửa hàng TENCH C(25). Tệp thứ hai chứa các thông tin về tình hình mua bán hàng trong ngày MUABAN.DBF gồm các trường: MACH C(5), Tổng số tiền chi để mua hàng CHI N(10,2), Tổng số tiền thu do bán hàng THU N(10,2) trong một ngày. Viết chương trình in ra tên cửa hàng có tổng số tiền dư 3 GV: NguyÔn Thµnh NghÜa sang ngày hôm sau thấp nhất và cao nhất theo biểu sau, nếu có nhiều cửa hàng có mức dư cao nhất hoặc thấp nhất thì chỉ lấy một cửa hàng. Mã cửa hàng Tên cửa hàng Số dư trong ngày Số tiền Cao nhất Thấp nhất Bài 19: Viết chương trình tính lương dựa vào số liệu trong tệp CSDL tên là HSLG.DBF có cấu trúc: Mã cán bộ MACB C(3), Họ và tên đệm: HODEM C(20), TEN C(7), Mã phòng ban: PHONG C(2), Lương cơ bản LCB N(3), Ngày công N(2), Tiền lương thực tế LUONG N(6). Tệp thứ hai là PHONG.DBF chứa các thông tin về hệ số lương của các phòng ban bao gồm: MÃ phòng ban PHONG C(2), Tên phòng ban TENPB C(15), Hệ số lương: HESO N(5,2). Lương được tính theo công thức: Lương = LCB*Hệ số lương/26*Số ngày công Hãy tính lương và in ra bảng lương cho phòng ban khi mã phòng ban được nhập từ bàn phím theo mẫu: BẢNG LƯƠNG THÁNG XX NĂM 200 . PHÒNG/BAN: ZZZZZZZZZZZ STT MÃ CÁN BỘ HỌ VÀ TÊN SỐ TIỀN Tổng cộng Bài 20: Có tệp CSDL tên là BANHANG.DBF để quản lý về tình hình các đại lý đã nhận hàng của công ty bao gồm các thông tin sau: 1. PHIEUXK C(5) Phiếu xuất kho kiêm phiếu hoá đơn 2. MAKH C(5) Mã khách hàng là đại lý của công ty 3. MAHANG C(5) Mã hàng mà đại lý đó nhận. 4. SOLUONG N(10) Số lượng hàng mà đại lý đó nhận 5. NGAYNHAN D(8) Ngày nhận hàng 6. TAMTRA N(10) Số tiền tạm thanh toán Có tệp CSDL tên là HANG.DBF bao gồm: 1. MAH C(5) Mã hàng 2. QUYCACH C(15) Quy cách tính 3. DONGIA N(10) Đơn giá bán Lập bảng báo cáo số tiền còn phải trả của khách hàng và in ra theo mẫu sau: BẢNG TỔNG HỢP TIỀN CÒN PHẢI TRẢ CỦA KHÁCH HÀNG STT Mã khách hàng Giá trị hàng Số tiền đã trả Số tiền còn nợ Cộng Biết rằng các đại lý được giữ lại 3% giá trị số tiền bán mỗi mặt hàng (tiền hoa hồng). 4 . GV: NguyÔn Thµnh NghÜa BÀI TẬP THỰC HÀNH FOXPRO Cho tệp HOCSINH.DBF có cấu trúc như sau: HOTEN CHARACTER 25. những người đạt loại kém. Bài 10: Hãy tạo một menu dọc có 6 mục sao cho khi chọn một mục từ 1 -> 5 thì một lệnh của Foxpro sẽ được thực hiện. Mục 6 nếu chọn