Kiểm tra số nguyên tố bằng Python
Hãy viết chương trình kiểm tra số nguyên tố bằng Python. Bạn chỉ cần viết chương trình ở mức cơ bản nhất trong Python và không cần phải tối ưu, bởi đã có bài viết thuật toán kiểm tra số nguyên tố khá chi tiết.
Bài giải
-------------------- ######## --------------------
Để giải bài này thì bạn phải hiểu chút khái niệm SNT đã nhé: Số nguyên tố là số nguyên lớn hơn 1 và chỉ chia hết cho 1 và chính nó.

Dựa vào định nghĩa này ta rút ra được những tính chất sau: Số 2 là SNT chẵn duy nhất, bởi vì những số chẵn lớn hơn 2 luôn chia hết cho 1, 2 và chính nó.
Nếu một số thỏa 2 tính chất trên thì đó là số nguyên tố.
Dựa vào đây ta có thể phân tích toán như sau: Giả sử N là số cần kiểm tra.
Bài viết này được đăng tại [free tuts .net]
- Kiểm tra nếu N bằng 2 thì là SNT => Break
- Nếu N <= 1 thì không phải SNT => Break
- Nếu N là số chẵn thì không phải SNT => Break
- Lặp qua các số lẻ từ 2 -> (N - 1), nếu tồn tại số nào mà N chia hết thì không phải là SNT, nếu không thì đó là SNT.
Bài giải viết bằng ngôn ngữ Python như sau:
# HỌC PYTHON TẠI FREETUTS.NET
# TÁC GIẢ: CƯỜNG NGUYỄN
print("Chương trình đăng tại freetuts.net!")
print("Nhập vào số N lớn hơn 1: ")
# Lấy dữ liệu
n = int(input())
flag = True
# Kiểm tra SNT
if (n < 2):
flag = False
elif (n == 2):
flag = True
elif (n % 2 == 0):
flag = False
else:
# Lặp qua các số lẻ nên bắt đầu từ 3 với bước nhảy là 2
for i in range(3, n, 2):
if (n % i == 0):
flag = False
# In kết quả
if flag == True:
print(n, " là số nguyên tố")
else:
print(n, " không phải là số nguyên tố")Đây là kết quả khi mình nhập số nguyên tố 7 vào:
Danh sách bài tập Python cơ bản
- Kiểm tra dữ liệu là number hay string bằng Python
- Tính tổng S(n) = 1 + 2 + 3 + … + n bằng Python
- Tính tổng S(n) = 1^2 + 2^2 + … + n^2 bằng Python
- Tính tổng S(n) = 1 + ½ + 1/3 + … + 1/n bằng Python
- Tính tổng S(n) = ½ + ¼ + … + 1/2n bằng Python
- Tính tổng S(n) = 1/3 + 1/5 + … + 1/(2n + 1)
- Liệt kê tất cả các ước số của số nguyên dương n bằng Python
- Tính tổng tất cả các ước số của số nguyên dương N bằng Python
- Tìm ước số lẻ lớn nhất của một số bằng Python
- Kiểm tra một số có phải là số hoàn hảo bằng Python
- Kiểm tra số chính phương bằng Python
- Kiểm tra số nguyên tố bằng Python
- Đảo ngược một số bằng Python
- In ra từng ký tự của một số bằng Python
- Giải phương trình bậc nhất một ẩn bằng Python (ax + b = 0)
- Giải phương trình bậc hai một ẩn bằng Python (ax^2 + bx + c = 0)

Các kiểu dữ liệu trong C ( int - float - double - char ...)
Thuật toán tìm ước chung lớn nhất trong C/C++
Cấu trúc lệnh switch case trong C++ (có bài tập thực hành)
ComboBox - ListBox trong lập trình C# winforms
Random trong Python: Tạo số random ngẫu nhiên
Lệnh cin và cout trong C++
Cách khai báo biến trong PHP, các loại biến thường gặp
Download và cài đặt Vertrigo Server
Thẻ li trong HTML
Thẻ article trong HTML5
Cấu trúc HTML5: Cách tạo template HTML5 đầu tiên
Cách dùng thẻ img trong HTML và các thuộc tính của img
Thẻ a trong HTML và các thuộc tính của thẻ a thường dùng