设计两个程序,分别求三边形面积和圆面积,再设计一个程序,该程序中需要创建两个子进程,两个子进程分别执行以上两个程序,子进程执行完后,父进程输出相关提示信息。
时间: 2023-08-05 14:09:41 浏览: 79
以下是Python实现:
求三角形面积:
```python
def triangle_area(a, b, c):
# 使用海伦公式计算三角形面积
s = (a + b + c) / 2
area = (s * (s - a) * (s - b) * (s - c)) ** 0.5
return area
```
求圆面积:
```python
def circle_area(r):
# 使用圆面积公式计算圆面积
pi = 3.141592653589793238
area = pi * r ** 2
return area
```
创建两个子进程执行以上两个程序:
```python
import os
# 创建子进程1,计算三角形面积
pid1 = os.fork()
if pid1 == 0:
a = 3
b = 4
c = 5
area = triangle_area(a, b, c)
print("子进程1:三角形面积为", area)
# 创建子进程2,计算圆面积
pid2 = os.fork()
if pid2 == 0:
r = 5
area = circle_area(r)
print("子进程2:圆面积为", area)
# 父进程等待子进程结束并输出提示信息
os.waitpid(pid1, 0)
print("子进程1结束")
os.waitpid(pid2, 0)
print("子进程2结束")
print("所有子进程结束")
```
运行结果:
```
子进程1:三角形面积为 6.0
子进程2:圆面积为 78.53981633974483
子进程1结束
子进程2结束
所有子进程结束
```
阅读全文