Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Tạo Series 5 số nguyên tố ngẫu nhiên từ 100-150 Python

Mô tả bài toán

Tạo một Series chứa 5 số nguyên tố (prime) ngẫu nhiên trong khoảng từ 100 đến 150.

Giải pháp

  1. Tìm tất cả số nguyên tố trong khoảng 100-150.
  2. Dùng random.sample() chọn 5 số ngẫu nhiên.
  3. Tạo Series từ list kết quả.

Ví dụ code hoàn chỉnh

import pandas as pd
import random as rand

# Bước 1: Tìm các số nguyên tố 100-150
primes = []
for i in range(100, 150):
    is_prime = True
    if i < 2:
        is_prime = False
    else:
        for j in range(2, int(i**0.5) + 1):  # Tối ưu: chỉ kiểm tra đến căn bậc 2
            if i % j == 0:
                is_prime = False
                break
    if is_prime:
        primes.append(i)

print(f"Các số nguyên tố 100-150: {primes}")
print(f"Tổng cộng: {len(primes)} số")

# Bước 2: Chọn 5 số ngẫu nhiên
selected = rand.sample(primes, 5)
rand_series = pd.Series(selected)
print("\nSeries 5 số nguyên tố ngẫu nhiên:")
print(rand_series)

Đầu ra mẫu

Các số nguyên tố 100-150: [101, 103, 107, 109, 113, 127, 131, 137, 139, 149]
Tổng cộng: 10 số

Series 5 số nguyên tố ngẫu nhiên:
0    109
1    149
2    107
3    101
4    131
dtype: int64

Cải tiến: Sử dụng sympy (thư viện toán học)

import pandas as pd
import random
from sympy import primerange

primes = list(primerange(100, 150))
rand_series = pd.Series(random.sample(primes, 5))
print(rand_series)

Lưu ý: Cách duyệt đến sqrt(i) nhanh hơn nhiều so với duyệt đến i như code gốc.