In tổng của tất cả các số nguyên tố trong một phạm vi nhất định Python

Viết chương trình Python để tính tổng tất cả các số nguyên tố trong một danh sách các số nguyên dương cho trước

Dữ liệu mẫu.
([1, 3, 4, 7, 9]) -> 10
([]) -> Danh sách trống.
([11, 37, 444]) -> 48

Giải pháp mẫu-1

Mã Python

def test(nums):
    if len(nums) > 0:
        return sum(list(filter(lambda x: (x > 1 and all(x % y != 0 for y in range(2, x))), nums))) 
    return "Empty list!"

nums = [1, 3, 4, 7, 9]
print("Original list:")
print(nums)
print("Sum of all prime numbers in the said list of numbers:")
print(test(nums))
nums = []
print("\nOriginal list:")
print(nums)
print("Sum of all prime numbers in the said list of numbers:")
print(test(nums))
nums = [11, 37, 444]
print("\nOriginal list:")
print(nums)
print("Sum of all prime numbers in the said list of numbers:")
print(test(nums))

Đầu ra mẫu

Original list:
[1, 3, 4, 7, 9]
Sum of all prime numbers in the said list of numbers:
10

Original list:
[]
Sum of all prime numbers in the said list of numbers:
Empty list!

Original list:
[11, 37, 444]
Sum of all prime numbers in the said list of numbers:
48

Sơ đồ

In tổng của tất cả các số nguyên tố trong một phạm vi nhất định Python

Trực quan hóa việc thực thi mã Python

Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực thi chương trình nói trên


Dung dịch mẫu-2

Mã Python

def test(nums):
    if len(nums) > 0:    
        e = lambda a: 2 in [a, 2**a%a]
        return sum(filter(e, nums))
    else:
        return "Empty list!"

nums = [1, 3, 4, 7, 9]
print("Original list:")
print(nums)
print("Sum of all prime numbers in the said list of numbers:")
print(test(nums))
nums = []
print("\nOriginal list:")
print(nums)
print("Sum of all prime numbers in the said list of numbers:")
print(test(nums))
nums = [11, 37, 444]
print("\nOriginal list:")
print(nums)
print("Sum of all prime numbers in the said list of numbers:")
print(test(nums))

Đầu ra mẫu

Original list:
[1, 3, 4, 7, 9]
Sum of all prime numbers in the said list of numbers:
10

Original list:
[]
Sum of all prime numbers in the said list of numbers:
Empty list!

Original list:
[11, 37, 444]
Sum of all prime numbers in the said list of numbers:
48

Sơ đồ

In tổng của tất cả các số nguyên tố trong một phạm vi nhất định Python

Trực quan hóa việc thực thi mã Python

Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực thi chương trình nói trên


Trình chỉnh sửa mã Python

Có một cách khác để giải quyết giải pháp này?

Bài tập Python trước. Sắp xếp lại các chữ số của một số.
Bài tập Python tiếp theo. Tập tin Bài tập Trang chủ.

Mức độ khó của bài tập này là gì?

Dễ dàng trung bình khó

Kiểm tra kỹ năng Lập trình của bạn với bài kiểm tra của w3resource



Chia sẻ Hướng dẫn / Bài tập này trên. FacebookTwitter

con trăn. Lời khuyên trong ngày

Lập chỉ mục tiêu cực

Trong Python, bạn có thể sử dụng lập chỉ mục phủ định. Trong khi chỉ số dương bắt đầu bằng 0, chỉ số âm bắt đầu bằng -1

Số nguyên dương lớn hơn 1 không có ước nào khác ngoài 1 và chính số đó gọi là số nguyên tố

2, 3, 5, 7, v.v. là các số nguyên tố vì chúng không có thừa số nào khác. Nhưng 6 không phải là số nguyên tố (nó là hợp số) vì, 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 dưới dạng thấp hơn cho khoảng dưới và trên cho khoảng trên và tìm các số nguyên tố trong phạm vi đó. Truy cập trang này để tìm hiểu cách kiểm tra xem một số có phải là số nguyên tố hay không

# Nhận đầu vào từ người dùng tối đa = int(input("Tìm tổng các số nguyên tố tối đa. ")) tổng = 0 cho số trong phạm vi (2, tối đa + 1). i = 2 cho tôi trong phạm vi (2, num). nếu (int(num % i) == 0). i = số ngắt; . nếu tôi không phải là số. tổng += num print("\Tổng của tất cả các số nguyên tố tối đa", tối đa, ". ", Tổng)

Số nguyên tố là số tự nhiên lớn hơn 1 và không có ước dương nào khác ngoài 1 và chính nó, chẳng hạn như 2, 3, 5, 7, 11, 13, v.v.

Người dùng được cung cấp hai số nguyên, giá trị thấp hơn và giá trị cao hơn. Nhiệm vụ là viết chương trình Python để in tất cả các số nguyên tố nằm trong khoảng (hoặc khoảng) đã cho

Để in tất cả các số nguyên tố trong khoảng thời gian đã cho, người dùng phải làm theo các bước sau

  • Bước 1. Lặp qua tất cả các phần tử trong phạm vi đã cho
  • Bước 2. Kiểm tra từng số xem nó có thừa số nào giữa 1 và chính nó không
  • Bước 3. Nếu có, thì số đó không phải là số nguyên tố và nó sẽ chuyển sang số tiếp theo
  • Bước 4. Nếu không, đó là số nguyên tố và chương trình sẽ in ra và kiểm tra số tiếp theo
  • Bước 5. Vòng lặp sẽ bị ngắt khi đạt đến giá trị trên

Thí dụ. Mã Python để in số nguyên tố giữa khoảng thời gian đã cho

đầu ra

Please, Enter the Lowest Range Value:  14
Please, Enter the Upper Range Value:  97
The Prime Numbers in the range are: 
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97

Sự kết luận

Trong hướng dẫn này, chúng tôi đã chỉ ra cách viết mã để in các số nguyên tố giữa khoảng các số đã cho.