BÀI 31 - THỰC HÀNH VIẾT CHƯƠNG TRÌNH ĐƠN GIẢN
Viết chương trình nhập từ bàn phím số tự nhiên n, kiểm tra n có phải là số nguyên tố hay không. Nếu n là hợp số thì in ra kết quả phân tích n thành tích các thừa số nguyên tố. Chú ý số 1 không là số nguyên tố và cũng không là hợp số.
Hướng dẫn.
Sử dụng biến danh sách NT để lưu các thừa số nguyên tố của n. Chương trình sẽ thiết lập danh sách NT chỉ khi n > 1. Kết quả của chương trình sẽ như sau:- Nếu n = 1 thì danh sách NT sẽ rỗng.
- Nếu n > 1 thì danh sách NT không rỗng. Độ dài danh sách len(NT) sẽ bằng 1 khi và chỉ khi n là số nguyên tố.
Nếu len(NT) > 1 thì chương trình sẽ in ra khai triển n thành tích các thừa số nguyên tố, khai triển này sẽ có dạng: n=p1x p1x….x pk Chạy chương trình với công cụ gỡ lỗi của phần mềm lập trình. Thiết lập một điểm dừng tại dòng 20 của chương trình như sau:
Thiết lập bảng theo dõi các giá trị trung gian k, m, n, NT sẽ như sau, giả sử giá trị nhập ban đầu của n = 100:
Viết chương trình nhập từ bàn phím ba số thực a, b, c và tìm nghiệm của phương trình bậc hai: ax2 + bx + c = 0.
Chương trình cần xét đầy đủ các trường hợp xảy ra.
Hướng dẫn.
Với bộ dữ liệu a, b, c đã nhập (là các số thực), chúng ta cần xét đầy đủ các trường hợp sau:- Nếu a = b = c phương trình có vô số nghiệm.
- Nếu a = b = 0; c ≠ 0, phương trình vô nghiệm.
- Nếu a = 0; b ≠ 0 phương trình là bậc nhất và có nghiệm duy nhất.
- Nếu a ≠ 0, giải phương trình bậc hai. Nghiệm sẽ phụ thuộc vào giá trị delta = b2 - 4ac. Phương trình vô nghiệm, có một nghiệm kép hoặc hai nghiệm phân biệt phụ thuộc vào giá trị delta là nhỏ hơn 0, bằng 0 hay lớn hơn 0.
Chương trình được thiết kế thông qua các hàm sau:
- NhapDL(): hàm nhập 3 số a, b, c từ bàn phím.
- GiaiPT1(b,c): hàm giải phương trình bậc nhât: bx+c=0.
- GiaiPT2(a,b,c): hàm giải phương trình bậc hai: ax2+bx+c=0.
Trong bài thực hành chúng ta sử dụng cấu trúc mở rộng của lệnh rẽ nhánh if … else trong Python khi các lệnh này lồng nhau. Khi đó các lệnh rẽ nhánh lồng nhau trong mô hình bên trái sẽ được viết gọn hơn như mô hình bên phải.
Chú ý: Cấu trúc if... elif...else có thể lồng nhau nhiều lần.
Chương trình đầy đủ như sau:
50 Bài Tập Cơ Bản Về Lập Trình Python Cho Người Mới Bắt Đầu
Phân loại theo chủ đề: Nhập/Xuất – Cấu trúc rẽ nhánh – Vòng lặp – Xử lý chuỗi – Danh sách – Hàm – File – Nâng cao cơ bản
🟦 I. Nhập/Xuất – Kiểu dữ liệu – Biến (10 bài)
- Nhập tên và in lời chào.
- Nhập hai số, in tổng, hiệu, tích, thương.
- Nhập bán kính hình tròn, tính chu vi và diện tích.
- Đổi nhiệt độ từ độ C sang độ F.
- Nhập chiều dài và chiều rộng, tính diện tích hình chữ nhật.
- Tính chu vi và diện tích hình tam giác.
- Nhập năm sinh, tính tuổi.
- Nhập số giây, đổi sang giờ:phút:giây.
- Nhập ba số, tính trung bình cộng.
- Kiểm tra kiểu dữ liệu của biến sử dụng
type()
.
🟦 II. Câu lệnh rẽ nhánh if…elif…else (8 bài)
- Kiểm tra số âm/dương/0.
- Kiểm tra năm nhuận.
- Kiểm tra số chẵn/lẻ.
- So sánh ba số, tìm số lớn nhất.
- Kiểm tra ký tự là nguyên âm hay phụ âm.
- Phân loại học sinh theo điểm (Giỏi/Khá/Trung bình/Yếu).
- Giải phương trình bậc nhất
ax + b = 0
. - Giải phương trình bậc hai
ax² + bx + c = 0
.
🟦 III. Vòng lặp for – while (10 bài)
- In dãy số từ 1 đến n.
- Tính tổng từ 1 đến n.
- In bảng cửu chương của một số.
- Tính giai thừa của một số.
- In các số chẵn từ 1 đến 100.
- Tìm UCLN và BCNN của hai số.
- Kiểm tra số nguyên tố.
- Liệt kê n số nguyên tố đầu tiên.
- Tính tổng các chữ số của một số.
- Đảo ngược số nguyên.
🟦 IV. Xử lý chuỗi (5 bài)
- Đếm số từ trong câu.
- Đếm số lần xuất hiện của ký tự trong chuỗi.
- Viết hoa toàn bộ chuỗi.
- Kiểm tra chuỗi đối xứng.
- Tách họ, tên đệm, tên từ họ tên đầy đủ.
🟦 V. Danh sách (list) và xử lý danh sách (5 bài)
- Nhập danh sách số nguyên và in ra.
- Tính tổng và trung bình của list.
- Tìm phần tử lớn nhất/nhỏ nhất trong list.
- Sắp xếp danh sách tăng dần.
- Đếm số lần xuất hiện của một phần tử trong list.
🟦 VI. Hàm và gọi hàm (4 bài)
- Viết hàm tính giai thừa.
- Viết hàm kiểm tra số nguyên tố.
- Viết hàm giải phương trình bậc 2.
- Viết hàm tính tổng các chữ số của số nguyên.
🟦 VII. Xử lý tệp (file) cơ bản (3 bài)
- Đọc nội dung từ file văn bản và in ra màn hình.
- Ghi danh sách số vào file.
- Tính tổng các số trong file.
🟦 VIII. Lập trình nâng cao (Tùy chọn mở rộng – cơ bản) (5 bài)
- Tạo từ điển lưu thông tin học sinh.
- Tính tổng các số lẻ trong list bằng list comprehension.
- Viết chương trình quản lý danh bạ đơn giản.
- Đếm số nguyên tố từ 1 đến n dùng hàm và list.
- Mô phỏng máy tính bỏ túi đơn giản (có menu chọn phép toán).
Chủ đề:
Tin Học 10