Viết chương trình hiển thị tất cả các số nguyên tố trong Python
Mình sẽ viết một chương trình Python để hiển thị tất cả các số nguyên tố trong khoảng từ a đến b, trong đó a và b là hai số nguyên dương được nhập từ người dùng. Chương trình sẽ duyệt qua tất cả các số trong khoảng và kiểm tra từng số xem có phải là số nguyên tố hay không. Nếu là số nguyên tố, chương trình sẽ in số đó lên màn hình.
Mã nguồn chương trình
Dưới đây là mã nguồn Python cho bài tập hiển thị tất cả các số nguyên tố trong một khoảng:
# Hàm kiểm tra số nguyên tố def la_so_nguyen_to(n): if n < 2: return False for i in range(2, int(n**0.5) + 1): if n % i == 0: return False return True # Hàm hiển thị các số nguyên tố trong khoảng từ a đến b def hien_thi_so_nguyen_to(a, b): print("Các số nguyên tố trong khoảng từ", a, "đến", b, "là:") for i in range(a, b + 1): if la_so_nguyen_to(i): print(i) # Hàm main để nhận đầu vào từ người dùng và gọi hàm hiển thị số nguyên tố def main(): a = int(input("Nhập số nguyên dương a: ")) b = int(input("Nhập số nguyên dương b: ")) if a >= b: print("Không hợp lệ! a phải nhỏ hơn b.") return hien_thi_so_nguyen_to(a, b) # Gọi hàm main để bắt đầu chương trình if __name__ == "__main__": main()
Giải thích mã nguồn
- Mình sử dụng hàm
la_so_nguyen_to(n)
để kiểm tra xem một số n có phải là số nguyên tố hay không. Trong hàm này, ta kiểm tra trường hợp đặc biệt nếu n nhỏ hơn 2 (vì số nguyên tố là số nguyên lớn hơn 1). Sau đó, mình duyệt qua các số từ 2 đến căn bậc hai của n để kiểm tra xem có số nào chia hết n hay không. Nếu có, thì n không phải là số nguyên tố và ta trả về False, ngược lại, ta trả về True. - Trong hàm
hien_thi_so_nguyen_to(a, b)
mình sử dụng vòng lặp for để duyệt qua tất cả các số từ a đến b. Trong từng lần duyệt, ta gọi hàmla_so_nguyen_to(i)
để kiểm tra xem số i có phải là số nguyên tố hay không. Nếu là số nguyên tố, ta in i lên màn hình.
Kết quả
Khi chạy chương trình, người dùng sẽ nhập hai số nguyên dương a và b. Sau đó, chương trình sẽ hiển thị tất cả các số nguyên tố trong khoảng từ a đến b.
Ví dụ:
Nhập số nguyên dương a: 10 Nhập số nguyên dương b: 30 Các số nguyên tố trong khoảng từ 10 đến 30 là: 11 13 17 19 23 29
Bài tập này giúp bạn rèn luyện khả năng sử dụng vòng lặp và kiểm tra số nguyên tố trong Python. Hy vọng rằng bài viết này sẽ hữu ích và bạn sẽ tiếp tục tìm hiểu thêm nhiều khía cạnh hơn trong lĩnh vực lập trình. Chúc bạn thành công trong việc học tập và ứng dụng lập trình!
Bài giải
-------------------- ######## --------------------
Câu hỏi thường gặp liên quan:
- Hiển thị 10 số tự nhiên đầu tiên bằng vòng lặp while trong Python
- Tạo dãy số theo mẫu đã cho bằng cách sử dụng vòng lặp for trong Python.
- Tính tổng các số từ 1 đến một số cho trước trong Python
- Viết chương trình in bảng nhân của một số cho trước trong Python
- Hiển thị số từ danh sách bằng vòng lặp trong Python
- Đếm tổng các chữ số của một số trong Python
- Viết chương trình sử dụng for vòng lặp để in dãy số đảo ngược theo mẫu trong Python
- In danh sách theo thứ tự đảo ngược bằng vòng lặp trong Python
- Hiển thị số từ -10 đến -1 bằng vòng lặp for trong Python
- Sử dụng khối lệnh else để hiển thị thông báo “Hoàn thành” trong Python
- Viết chương trình hiển thị tất cả các số nguyên tố trong Python
- Hiển thị dãy Fibonacci tối đa 10 số hạng trong Python
- Tìm giai thừa của một số cho trước trong Python
- Đảo ngược một số nguyên cho trước trong Python
- Hiển thị các phần tử trong danh sách đã cho có mặt ở vị trí chỉ số lẻ trong Python
- Tính lập phương của tất cả các số từ 1 đến một số cho trước trong Python
- Tìm tổng của dãy có n số hạng trong Python
- In mẫu hình thoi sử dụng vòng lặp for trong Python