Hướng dẫn how do you get primes in python? - làm thế nào để bạn có được số nguyên tố trong python?

Một số nguyên dương lớn hơn 1 không có yếu tố nào khác ngoại trừ 1 và bản thân số được gọi là số nguyên tố.

2, 3, 5, 7, vv là số nguyên tố vì chúng không có bất kỳ yếu tố nào khác. Nhưng 6 không phải là nguyên tố [nó là tổng hợp] kể từ, 2 x 3 = 6.

Mã nguồn

# Python program to display all the prime numbers within an interval

lower = 900
upper = 1000

print["Prime numbers between", lower, "and", upper, "are:"]

for num in range[lower, upper + 1]:
   # all prime numbers are greater than 1
   if num > 1:
       for i in range[2, num]:
           if [num % i] == 0:
               break
       else:
           print[num]

Đầu ra

Prime numbers between 900 and 1000 are:
907
911
919
929
937
941
947
953
967
971
977
983
991
997

Ở đây, chúng tôi lưu trữ khoảng thời gian dưới mức thấp hơn cho khoảng dưới và trên cho khoảng trên và tìm số nguyên tố trong phạm vi đó. Truy cập trang này để tìm hiểu làm thế nào để kiểm tra xem một số có chính hay không.

Ví dụ để kiểm tra xem một số nguyên có phải là số nguyên tố hay không sử dụng cho vòng lặp và nếu ... câu lệnh khác. Nếu số không phải là nguyên tố, nó được giải thích trong đầu ra tại sao nó không phải là số nguyên tố.

Để hiểu ví dụ này, bạn nên có kiến ​​thức về các chủ đề lập trình Python sau:

  • Python nếu ... tuyên bố khác
  • Python cho vòng lặp
  • Python nghỉ và tiếp tục

Một số nguyên dương lớn hơn 1 không có yếu tố nào khác ngoại trừ 1 và bản thân số được gọi là số nguyên tố. 2, 3, 5, 7, vv là số nguyên tố vì chúng không có bất kỳ yếu tố nào khác. Nhưng 6 không phải là nguyên tố [nó là tổng hợp] kể từ, 2 x 3 = 6.

Ví dụ 1: Sử dụng biến cờ

# Program to check if a number is prime or not

num = 29

# To take input from the user
#num = int[input["Enter a number: "]]

# define a flag variable
flag = False

# prime numbers are greater than 1
if num > 1:
    # check for factors
    for i in range[2, num]:
        if [num % i] == 0:
            # if factor is found, set flag to True
            flag = True
            # break out of loop
            break

# check if flag is True
if flag:
    print[num, "is not a prime number"]
else:
    print[num, "is a prime number"]

Trong chương trình này, chúng tôi đã kiểm tra xem Num có phải là nguyên tố hay không. Số ít hơn hoặc bằng 1 không phải là số nguyên tố. Do đó, chúng tôi chỉ tiến hành nếu num lớn hơn 1.

Chúng tôi kiểm tra xem Num có chính xác chia hết cho bất kỳ số nào từ 2 đến

Prime numbers between 900 and 1000 are:
907
911
919
929
937
941
947
953
967
971
977
983
991
997
0 không. Nếu chúng ta tìm thấy một yếu tố trong phạm vi đó, số không phải là số nguyên tố, vì vậy chúng ta đặt cờ thành
Prime numbers between 900 and 1000 are:
907
911
919
929
937
941
947
953
967
971
977
983
991
997
1 và thoát ra khỏi vòng lặp.

Bên ngoài vòng lặp, chúng tôi kiểm tra xem

Prime numbers between 900 and 1000 are:
907
911
919
929
937
941
947
953
967
971
977
983
991
997
2 là
Prime numbers between 900 and 1000 are:
907
911
919
929
937
941
947
953
967
971
977
983
991
997
1 hoặc
Prime numbers between 900 and 1000 are:
907
911
919
929
937
941
947
953
967
971
977
983
991
997
4.

  • Nếu đó là
    Prime numbers between 900 and 1000 are:
    907
    911
    919
    929
    937
    941
    947
    953
    967
    971
    977
    983
    991
    997
    
    1,
    Prime numbers between 900 and 1000 are:
    907
    911
    919
    929
    937
    941
    947
    953
    967
    971
    977
    983
    991
    997
    
    6 không phải là số nguyên tố.
  • Nếu đó là
    Prime numbers between 900 and 1000 are:
    907
    911
    919
    929
    937
    941
    947
    953
    967
    971
    977
    983
    991
    997
    
    4,
    Prime numbers between 900 and 1000 are:
    907
    911
    919
    929
    937
    941
    947
    953
    967
    971
    977
    983
    991
    997
    
    6 là số nguyên tố.

Lưu ý: Chúng tôi có thể cải thiện chương trình của mình bằng cách giảm phạm vi số mà chúng tôi tìm kiếm các yếu tố.: We can improve our program by decreasing the range of numbers where we look for factors.

Trong chương trình trên, phạm vi tìm kiếm của chúng tôi là từ 2 đến

Prime numbers between 900 and 1000 are:
907
911
919
929
937
941
947
953
967
971
977
983
991
997
0.

Chúng tôi có thể đã sử dụng phạm vi,

# Program to check if a number is prime or not

num = 29

# To take input from the user
#num = int[input["Enter a number: "]]

# define a flag variable
flag = False

# prime numbers are greater than 1
if num > 1:
    # check for factors
    for i in range[2, num]:
        if [num % i] == 0:
            # if factor is found, set flag to True
            flag = True
            # break out of loop
            break

# check if flag is True
if flag:
    print[num, "is not a prime number"]
else:
    print[num, "is a prime number"]
0 hoặc
# Program to check if a number is prime or not

num = 29

# To take input from the user
#num = int[input["Enter a number: "]]

# define a flag variable
flag = False

# prime numbers are greater than 1
if num > 1:
    # check for factors
    for i in range[2, num]:
        if [num % i] == 0:
            # if factor is found, set flag to True
            flag = True
            # break out of loop
            break

# check if flag is True
if flag:
    print[num, "is not a prime number"]
else:
    print[num, "is a prime number"]
1. Phạm vi thứ hai dựa trên thực tế là một số tổng hợp phải có hệ số nhỏ hơn hoặc bằng căn bậc hai của số đó. Nếu không, số là số nguyên tố.

Bạn có thể thay đổi giá trị của Biến số trong mã nguồn trên để kiểm tra xem một số là số nguyên tố hay không cho các số nguyên khác.

Trong Python, chúng ta cũng có thể sử dụng câu lệnh

# Program to check if a number is prime or not

num = 29

# To take input from the user
#num = int[input["Enter a number: "]]

# define a flag variable
flag = False

# prime numbers are greater than 1
if num > 1:
    # check for factors
    for i in range[2, num]:
        if [num % i] == 0:
            # if factor is found, set flag to True
            flag = True
            # break out of loop
            break

# check if flag is True
if flag:
    print[num, "is not a prime number"]
else:
    print[num, "is a prime number"]
2 để thực hiện nhiệm vụ này mà không cần sử dụng biến
Prime numbers between 900 and 1000 are:
907
911
919
929
937
941
947
953
967
971
977
983
991
997
2 bổ sung.

Ví dụ 2: Sử dụng một câu lệnh ...

# Program to check if a number is prime or not

num = 407

# To take input from the user
#num = int[input["Enter a number: "]]

# prime numbers are greater than 1
if num > 1:
   # check for factors
   for i in range[2,num]:
       if [num % i] == 0:
           print[num,"is not a prime number"]
           print[i,"times",num//i,"is",num]
           break
   else:
       print[num,"is a prime number"]
       
# if input number is less than
# or equal to 1, it is not prime
else:
   print[num,"is not a prime number"]

Đầu ra

407 is not a prime number
11 times 37 is 407

Ở đây, chúng tôi đã sử dụng một câu lệnh

# Program to check if a number is prime or not

num = 29

# To take input from the user
#num = int[input["Enter a number: "]]

# define a flag variable
flag = False

# prime numbers are greater than 1
if num > 1:
    # check for factors
    for i in range[2, num]:
        if [num % i] == 0:
            # if factor is found, set flag to True
            flag = True
            # break out of loop
            break

# check if flag is True
if flag:
    print[num, "is not a prime number"]
else:
    print[num, "is a prime number"]
4 để kiểm tra xem
Prime numbers between 900 and 1000 are:
907
911
919
929
937
941
947
953
967
971
977
983
991
997
6 có phải là chính không.

Nó hoạt động theo logic rằng mệnh đề

# Program to check if a number is prime or not

num = 29

# To take input from the user
#num = int[input["Enter a number: "]]

# define a flag variable
flag = False

# prime numbers are greater than 1
if num > 1:
    # check for factors
    for i in range[2, num]:
        if [num % i] == 0:
            # if factor is found, set flag to True
            flag = True
            # break out of loop
            break

# check if flag is True
if flag:
    print[num, "is not a prime number"]
else:
    print[num, "is a prime number"]
6 của vòng lặp
# Program to check if a number is prime or not

num = 29

# To take input from the user
#num = int[input["Enter a number: "]]

# define a flag variable
flag = False

# prime numbers are greater than 1
if num > 1:
    # check for factors
    for i in range[2, num]:
        if [num % i] == 0:
            # if factor is found, set flag to True
            flag = True
            # break out of loop
            break

# check if flag is True
if flag:
    print[num, "is not a prime number"]
else:
    print[num, "is a prime number"]
7 chạy nếu và chỉ khi chúng ta không phá vỡ vòng lặp
# Program to check if a number is prime or not

num = 29

# To take input from the user
#num = int[input["Enter a number: "]]

# define a flag variable
flag = False

# prime numbers are greater than 1
if num > 1:
    # check for factors
    for i in range[2, num]:
        if [num % i] == 0:
            # if factor is found, set flag to True
            flag = True
            # break out of loop
            break

# check if flag is True
if flag:
    print[num, "is not a prime number"]
else:
    print[num, "is a prime number"]
7. Điều kiện đó chỉ được đáp ứng khi không tìm thấy yếu tố nào, điều đó có nghĩa là số đã cho là số nguyên tố.

Vì vậy, trong mệnh đề

# Program to check if a number is prime or not

num = 29

# To take input from the user
#num = int[input["Enter a number: "]]

# define a flag variable
flag = False

# prime numbers are greater than 1
if num > 1:
    # check for factors
    for i in range[2, num]:
        if [num % i] == 0:
            # if factor is found, set flag to True
            flag = True
            # break out of loop
            break

# check if flag is True
if flag:
    print[num, "is not a prime number"]
else:
    print[num, "is a prime number"]
6, chúng tôi in rằng số đó là số nguyên tố.

Chỉ cần nghiên cứu chủ đề, tìm kiếm các ví dụ trong chuỗi và cố gắng tạo phiên bản của tôi:

from collections import defaultdict
# from pprint import pprint

import re


def gen_primes[limit=None]:
    """Sieve of Eratosthenes"""
    not_prime = defaultdict[list]
    num = 2
    while limit is None or num 

Bài Viết Liên Quan

Chủ Đề