编写程序实现如下功能: a) 随机产生 20 个 1~100 之间的随机整数,写入文本文件 hrbuc.txt 中。 b) 再从文本文件 hrbuc.txt 中读出数据,计算并输出标准差,写入 h
时间: 2024-10-24 14:16:26 浏览: 20
java 随机生成整数
4星 · 用户满意度95%
编写Python代码来实现这两个功能:
```python
import random
import math
# a) 随机生成并写入文件
def generate_random_numbers(n, filename):
with open(filename, 'w') as f:
for _ in range(n):
num = random.randint(1, 100)
f.write(str(num) + '\n')
generate_random_numbers(20, 'hr buc.txt')
# b) 读取数据计算标准差并写入文件
def calculate_std_dev(filename):
data_list = []
with open(filename, 'r') as f:
for line in f:
data_list.append(int(line.strip()))
mean = sum(data_list) / len(data_list)
variance = sum((x - mean) ** 2 for x in data_list) / len(data_list)
std_dev = math.sqrt(variance)
with open('std_dev.txt', 'w') as f:
f.write(f"Standard Deviation: {std_dev}\n")
calculate_std_dev('hr buc.txt')
```
在这个代码中,我们首先定义了两个函数:`generate_random_numbers`用于生成指定数量的随机数并将它们写入文件,然后`calculate_std_dev`负责从文件中读取数据、计算标准差,并将结果写入新的文本文件。
运行上述代码后,你会在`hr buc.txt`中看到生成的20个随机整数,而在`std_dev.txt`中得到计算得出的标准差。
阅读全文