编写一个有两个线程的程序,第一个线程用来计算2到100之间的素数个数,第二个线程用来计算100到200之间的素数的个数,最后输出结果、
时间: 2024-03-10 17:43:59 浏览: 67
100-200之间所有素数求和程序代码(二个版本)
5星 · 资源好评率100%
好的,以下是一个符合题目要求的Python程序:
```python
import threading
# 判断一个数是否为素数
def is_prime(n):
if n <= 1:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
# 计算2到100之间的素数个数
def count_prime1():
count = 0
for i in range(2, 101):
if is_prime(i):
count += 1
print("2到100之间的素数个数为:", count)
# 计算100到200之间的素数个数
def count_prime2():
count = 0
for i in range(100, 201):
if is_prime(i):
count += 1
print("100到200之间的素数个数为:", count)
# 创建两个线程
t1 = threading.Thread(target=count_prime1)
t2 = threading.Thread(target=count_prime2)
# 启动两个线程
t1.start()
t2.start()
# 等待两个线程结束
t1.join()
t2.join()
# 输出结果
print("程序结束!")
```
这个程序中,我们首先定义了一个判断一个数是否为素数的函数 `is_prime`,然后定义了两个函数 `count_prime1` 和 `count_prime2`,分别用来计算2到100之间和100到200之间的素数个数。接着,我们创建了两个线程 `t1` 和 `t2`,分别用来执行这两个函数。最后,我们启动这两个线程,并使用 `join` 方法等待它们结束,然后输出结果。
阅读全文