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ố.
- 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.
- 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:
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:
--- The end! ---
CÙNG CHUYÊN MỤC:
Chủ đề 1.MÁY TÍNH VÀ XÃ HỘI TRI THỨC
Bài 1. Thông tin và xử lí thông tin
Bài 2. Vai trò của thiết bị thông minh và tin học đối với xã hội
Bài 3. Một số kiểu dữ liệu và dữ liệu văn bản
Bài 4. Hệ nhị phân và dữ liệu số nguyên
Bài 5. Dữ liệu lôgic
Bài 6. Dữ liệu âm thanh và hình ảnh
Bài 7. Thực hành sử dụng thiết bị thông dụng
Chủ đề 2.Bài 2. Vai trò của thiết bị thông minh và tin học đối với xã hội
Bài 3. Một số kiểu dữ liệu và dữ liệu văn bản
Bài 4. Hệ nhị phân và dữ liệu số nguyên
Bài 5. Dữ liệu lôgic
Bài 6. Dữ liệu âm thanh và hình ảnh
Bài 7. Thực hành sử dụng thiết bị thông dụng
MẠNG MÁY TÍNH VÀ INTERNET
Bài 8. Mạng máy tính trong cuộc sống hiện đại
Bài 9. An toàn trên không gian mạng
Bài 10. Thực hành khai thác tài nguyên trên Internet
Chủ đề 3.Bài 9. An toàn trên không gian mạng
Bài 10. Thực hành khai thác tài nguyên trên Internet
ĐẠO ĐỨC, PHÁP LUẬT VÀ VĂN HÓA TRONG MÔI TRƯỜNG SỐ
Chủ đề 4.
ỨNG DỤNG TIN HỌC
Bài 12. Phần mềm thiết kế đồ hoạ
Bài 13. Bổ sung đối tượng đồ hoạ
Bài 14. Làm việc với đối tượng đường và văn bản
Bài 15. Hoàn thiện hình ảnh đồ hoạ
Chủ đề 5.Bài 13. Bổ sung đối tượng đồ hoạ
Bài 14. Làm việc với đối tượng đường và văn bản
Bài 15. Hoàn thiện hình ảnh đồ hoạ
GIẢI QUYẾT VẤN ĐỀ VỚI SỰ TRỢ GIÚP CỦA MÁY TÍNH
Bài 16. Ngôn ngữ lập trình bậc cao và Python
Bài 17. Biến và lệnh gán
Bài 18. Các lệnh vào ra đơn giản
Bài 19. Câu lệnh điều kiện if
Bài 20. Câu lệnh lặp for
Bài 21. Câu lệnh lặp while
Bài 22. Kiểu dữ liệu danh sách
Bài 23. Một số lệnh làm việc với dữ liệu danh sách
Bài 24. Xâu kí tự
Bài 25. Một số lệnh làm việc với xâu kí tự
Bài 26. Hàm trong Python
Bài 27. Tham số của hàm
Bài 28. Phạm vi của biến
Bài 29. Nhận biết lỗi chương trình
Bài 30. Kiểm thử và gỡ lỗi chương trình
Bài 31. Thực hành viết chương trình đơn giản
Bài 32. Ôn tập lập trình Python
Chủ đề 6.Bài 17. Biến và lệnh gán
Bài 18. Các lệnh vào ra đơn giản
Bài 19. Câu lệnh điều kiện if
Bài 20. Câu lệnh lặp for
Bài 21. Câu lệnh lặp while
Bài 22. Kiểu dữ liệu danh sách
Bài 23. Một số lệnh làm việc với dữ liệu danh sách
Bài 24. Xâu kí tự
Bài 25. Một số lệnh làm việc với xâu kí tự
Bài 26. Hàm trong Python
Bài 27. Tham số của hàm
Bài 28. Phạm vi của biến
Bài 29. Nhận biết lỗi chương trình
Bài 30. Kiểm thử và gỡ lỗi chương trình
Bài 31. Thực hành viết chương trình đơn giản
Bài 32. Ôn tập lập trình Python
HƯỚNG NGHIỆP VỚI TIN HỌC
CÁC CHUYÊN MỤC LIÊN QUAN: