BÀI THỰC HÀNH ÔN TẬP 1. Sinh viên ĐỌC CẨN THẨN TẤT CẢ NỘI DUNG trong bài thực hành trước khi làm bài. 2. Sinh viên TỰ GÕ CODE, KHÔNG COPY từ bài có sẵn, để nắm được việc lập trình. 1. Chuẩn đầu ra Củng cố lại kiến thực về lập trình với NNLT Visual Basic. 2. Chuẩn bị - Lý thuyết về các điều khiển: Form, Label, TextBox, CommandButton, CheckBox, OptionButton, ListBox, ComboBox. - Lý thuyết về lập trình: kiểu dữ liệu, cấu trúc IF, cấu trúc FOR 3. Phương tiện Máy tính có cài đặt Visual Studio 6.0 4. Nội dung thực hành 4.1. TÍNH CHU VI, DIỆN TÍCH HÌNH TRÒN : - Thiết kế chương trình cho phép nhập vào bán kính - Khi click vào nút lệnh Tính, chương trình kiểm tra dữ liệu nhập vào có phải là số và là số dương hay không. Nếu đúng, tính chu vi và diện tích hình tròn; nếu sai, hiển thị thông báo yêu cầu nhập lại. - Khi click vào nút lệnh Nhập mới, chương trình xóa dữ liệu ở các hộp văn bản. : : 1 / 23
4.2. CHƯƠNG TRÌNH GIẢI PHƯƠNG TRÌNH BẬC NHẤT : - Thiết kế chương trình cho phép nhập vào các hệ số a, b của phương trình bậc một dạng ax + b = 0. Sau đó giải phương trình này. - Chương trình chỉ cho phép nhập các ký tự số vào các hộp văn bản (textbox). : : 2 / 23
- Kiểm soát đảm bảo chương trình chỉ cho phép nhập ký tự số - Đoạn chương trình trên không cho phép xóa dữ liệu, để xóa được dữ liệu chương trình cần được cải tiến như sau: (biết rằng mã Ascii của phím xóa (backspace) bằng 8) - Đoạn chương trình trên không cho phép nhập số thập phân và số âm, hãy cải tiến chương trình để thực hiện được việc đó (biết rằng mã Ascii của dấu chấm là 46, của dấu trừ là 45). - nút lệnh Giải phương trình (chú ý: vị trí khai báo biến) 4.3. CÁC PHÉP TOÁN CƠ BẢN : - Chương trình cho phép nhập vào hai số A và B. Sau đó, lựa chọn một trong bốn phép toán (+, -, *, /) từ danh sách. - Khi click vào nút lệnh Thực hiện, kết quả của phép toán được hiển thị ở điều khiển nhãn Kết quả. : 3 / 23
: - Thêm các phép toán (+, -, *, /) vào danh sách của hộp kết hợp (ComboBox). Để thêm dữ liệu vào hộp kết hợp (ComboBox) sử dụng một trong hai cách sau: Cách 1: Cách 2: - nút lệnh Thực hiện 4 / 23
4.4. THÊM MỤC VÀO HỘP DANH SÁCH (LISTBOX) SỬ DỤNG INPUTBOX - Viết chương trình cho phép thêm mục vào cuối một danh sách. Dữ liệu thêm vào được nhập qua InputBox. - Chương trình cho phép chọn và xóa từng mục trong danh sách. 5 / 23
4.5. CHUYỂN MỤC GIỮA HAI HỘP DANH SÁCH (LISTBOX) - Thiết kế chương trình có giao diện như hình. - Chương trình cho phép chọn một mục ở danh sách 1, nhấn nút lệnh >, mục đó được chuyển sang danh sách 2. - Nút lệnh <: chuyển một mục từ danh sách 2 sang danh sách 1. - Nút lệnh <<: chuyển toàn bộ danh sách 2 sang danh sách 1. - Nút lệnh >>: chuyển toàn bộ danh sách 1 sang danh sách 2. - Nút lệnh Thêm: cho phép thêm một mục vào danh sách 1 sử dụng InputBox. - Nút lệnh Xóa: xóa một mục của danh sách 1. - Nút lệnh Thoát: thoát khỏi chương trình. - Sinh viên tự lập trình các nút lệnh Thêm, Xóa, Thoát, <, và <<. - nút lệnh > 6 / 23
- nút lệnh >> 4.6. ĐẾM SỐ PHẦN TỬ CHẴN - Viết chương trình cho phép nhập một dãy số nguyên vào danh sách (listbox). - Đếm số phần tử có giá trị chẵn của dãy. - Sinh viên tự lập trình nút lệnh Thêm và Xóa. 7 / 23
- Nút lệnh Đếm - Chú ý: sinh viên tự khai báo biến, biết rằng n, i, a1, và dem đều là biến nguyên. 4.7. ĐẾM CẶP HAI PHẦN TỬ LIÊN TIẾP - Viết chương trình cho phép nhập một dãy số nguyên vào danh sách (listbox). - Đếm số cặp hai phần tử liên tiếp thỏa mãn điều kiện hai số trong cặp trái dấu nhau. 8 / 23
4.8. TÍNH TỔNG VÀ TRUNG BÌNH CỘNG CỦA DÃY SỐ - Nhập vào một dãy số nguyên. - Tính tổng và trung bình cộng của các phần tử trong dãy vừa nhập. - Tính trung bình cộng của các phần tử chẵn. - Khai báo biến - Nút lệnh tính tổng dãy số 9 / 23
- Nút lệnh tính trung bình cộng dãy số - Nút lệnh tính trung bình cộng các phần tử chẵn 4.9. TÌM PHẦN TỬ CHẴN ĐẦU TIÊN - Nhập vào một dãy số nguyên. - Tìm phần tử chẵn đầu tiên của dãy vừa nhập (nút lệnh Tìm). 10 / 23
- Sinh viên tự lập trình nút Thêm một phần tử vào danh sách, và nút Xóa một phần tử của danh sách. - Nút lệnh Tìm 4.10. TÌM PHẦN TỬ CHẴN LỚN NHẤT - Nhập vào một dãy số nguyên. - Tìm phần tử chẵn lớn nhất của dãy vừa nhập (nút lệnh Tìm). 11 / 23
- Sinh viên tự lập trình nút Thêm một phần tử vào danh sách, và nút Xóa một phần tử của danh sách. - Nút lệnh Tìm 12 / 23
4.11. KIỂM TRA SỐ NGUYÊN TỐ - Nhập một dãy số nguyên vào danh sách (listbox) - Chọn một số và kiểm tra xem số đó có phải là số nguyên tố hay không (nút lệnh Kiểm tra) - Nút lệnh Kiểm tra 4.12. ĐẾM SỐ LƯỢNG SỐ NGUYÊN TỐ TRONG MỘT DÃY - Nhập một dãy số nguyên vào danh sách (listbox) - Đếm số lượng số nguyên tố có trong dãy số vừa nhập. : Sinh viên tự thiết kế 13 / 23
- Nút lệnh Đếm số nguyên tố: 4.13. ĐẾM SỐ ĐIỂM NẰM TRONG GÓC PHẦN TƯ THỨ NHẤT - Nhập một dãy điểm (mỗi điểm gồm hoành độ và tung độ) vào danh sách (listbox). Hoành độ và tung độ ngăn cách bằng dấu phẩy (,) (xem hình giao diện). - Đếm số điểm nằm trong góc phần tư thứ nhất. - Nút lệnh Nhập - Nút lệnh Xóa: sinh viên tự lập trình - Nút lệnh Đếm 14 / 23
- Ghi chú: Sinh viên tự khai báo biến. 4.14. TÌM ĐIỂM XA GỐC TỌA ĐỘ NHẤT - Nhập một dãy điểm (mỗi điểm gồm hoành độ và tung độ) vào danh sách (listbox). Hoành độ và tung độ ngăn cách bằng dấu phẩy (,). - Xác định tọa độ của một điểm xa gốc tọa độ nhất. Khoảng cách từ điểm đó tới gốc tọa độ là bao nhiêu? - Sinh viên tự lập trình nút lệnh Thêm và Xóa. - Khai báo biến 15 / 23
- Nút lệnh Thực hiện bài toán - Ghi chú: Thuộc tính multiline của điều khiển textbox hiển thị kết quả phải đặt bằng True 4.15. ĐẾM SỐ SINH VIÊN CÓ HỌ NGUYỄN - Nhập một danh sách sinh viên. Mỗi sinh viên có các thông tin sau: Họ tên, điểm toán, điểm lý (xem giao diện). - Đếm số lượng sinh viên có họ Nguyễn. 16 / 23
- Nút lệnh Thêm - Nút lệnh Xóa: sinh viên tự lập trình - Nút lệnh Thực hiện bài toán - Ghi chú: Sinh viên tự khai báo biến. 4.16. TÌM SINH VIÊN CÓ ĐIỂM TOÁN CAO NHẤT - Nhập một danh sách sinh viên. Mỗi sinh viên có các thông tin sau: Họ tên, điểm toán, điểm lý (xem giao diện). - Đếm số lượng sinh viên có họ Nguyễn. 17 / 23
- Nút lệnh Thêm và Xóa: sinh viên tự lập trình - Nút lệnh Thực hiện bài toán - Ghi chú: Sinh viên tự khai báo biến. 4.17. TÌM SINH VIÊN CÓ ĐIỂM TRUNG BÌNH CAO NHẤT 18 / 23
- Nhập một danh sách sinh viên. Mỗi sinh viên có các thông tin sau: Họ tên, điểm toán, điểm lý(xem giao diện). - Đếm số lượng sinh viên có họ Nguyễn. - Nút lệnh Thêm và Xóa: sinh viên tự lập trình - Nút lệnh Thực hiện bài toán 19 / 23
- Ghi chú: Sinh viên tự khai báo biến. 5. Bài tập tự làm 5.1. Viết chương trình nhập vào chiều dài, chiều rộng của hình chữ nhật. Tính chu vi và diện tích của hình chữ nhật đó (sinh viên tự thiết kế giao diện). 5.2. Viết chương trình nhập vào hệ số a (a 0), b, c của phương trình bậc 2 có dạng ax 2 + bx + c = 0 giải phương trình bậc 2 (giao diện như hình bên dưới). 5.3. Viết chương trình nhập vào tọa độ hai điểm. Tính độ dài và hệ số góc của đoạn thẳng nối hai điểm đó (giao diện như hình bên dưới). 20 / 23
5.4. Viết chương trình nhập một dãy số nguyên vào danh sách (listbox). Đếm số phần tử nằm ngoài khoảng (-10, 10) của dãy (sinh viên tự thiết kế giao diện). 5.5. Viết chương trình nhập một dãy số nguyên vào danh sách (listbox). Đếm số cặp 2 phần tử liên tiếp mà số sau lớn hơn số trước của dãy (sinh viên tự thiết kế giao diện). 5.6. Viết chương trình nhập một dãy số nguyên vào danh sách (listbox). Tìm phần tử chẵn cuối cùng của dãy (sinh viên tự thiết kế giao diện). 5.7. Thiết kế chương trình có giao diện như hình dưới và thực hiện các chức năng sau: 21 / 23
- Người sử dụng nhập thông tin vào 2 ô TextBox (mã số và họ tên), sau đó nhấp chọn nút Thêm, giá trị của ô mã số được đưa vào ComboBox, còn giá trị của ô họ và tên được đưa vào ListBox. - Nút lệnh Sửa: cho phép người dùng nhập mã số và họ tên vào các TextBox. Nếu mã số có trong danh sách ở ComboBox, thì sửa họ tên của mã số đó bằng họ tên mới nhập ở TextBox. - Nút lệnh Xóa: Nếu người dùng chọn một mã số ở ComboBox, và nhấn nút Xóa thì mã số đó và họ tên tương ứng trên ListBox sẽ bị xóa. 5.8. Thiết kế chương trình tính N! với giao diện như sau: 5.9. Thiết kế chương trình cho phép nhập vào một số nguyên N, sau đó tính các tổng sau: a. S = 1 + 2 + + n 22 / 23
b. S = 1/2 + 1/3 + + 1/n c. S = 1/2 + 2/3 + + n/(n+1) d. S = -1 + 2-3 + 4 - + (-1) n n 5.10. Thiết kế chương trình cho phép nhập vào hai số nguyên, sau đó tìm ước chung lớn nhất của hai số đó. 5.11. Viết chương trình cho phép nhập một dãy số thực vào ListBox, và nhập một số thực x vào TextBox. Chương trình cho phép đếm số lần xuất hiện của x trong dãy số. 5.12. Viết chương trình cho phép nhập một dãy số thực vào ListBox. Chương trình cho phép sắp xếp dãy số đó theo chiều tăng dần (hoặc giảm dần). 5.13. Viết chương trình cho phép nhập vào một số và kiểm tra số đó có phải là số chính phương hay không? 5.14. Viết chương trình cho phép Nhập một danh sách sinh viên. Mỗi sinh viên có các thông tin sau: Họ tên, điểm toán, điểm lý(xem giao diện). Nút lệnh Thực hiện bài toán: Chọn 1 sinh viên trong danh sách, sau đó nhấn nút lệnh Thực hiện bài toán, chương trình tính tổng điểm của sinh viên và in ra ô TextBox kết quả. 5.15. 23 / 23