输入m个数,求其最大数、最小数和平均值
时间: 2024-05-15 13:16:35 浏览: 8
假设输入的m个数存储在一个数组a中,可以按照以下方式求解:
1. 初始化最大值max为数组第一个元素a[0],最小值min为数组第一个元素a[0],总和sum为0。
2. 遍历数组a,对于每个元素a[i],执行以下操作:
a. 如果a[i]大于max,则将max更新为a[i]。
b. 如果a[i]小于min,则将min更新为a[i]。
c. 将a[i]加入总和sum中。
3. 计算平均值avg,即avg = sum / m。
4. 输出最大值max、最小值min和平均值avg。
下面是Python代码实现:
```python
m = int(input("请输入数字个数:"))
a = []
for i in range(m):
a.append(int(input("请输入第%d个数字:" % (i+1))))
max = a[0]
min = a[0]
sum = 0
for i in range(m):
if a[i] > max:
max = a[i]
if a[i] < min:
min = a[i]
sum += a[i]
avg = sum / m
print("最大值为:", max)
print("最小值为:", min)
print("平均值为:", avg)
```
相关问题
输入m个数,求其最大数、最小数和平均值。
### 回答1:
输入m个数,可以通过循环输入的方式实现。然后,可以定义三个变量来分别记录最大数、最小数和总和。在循环中,每输入一个数,就与当前的最大数和最小数进行比较,更新它们的值。同时,将输入的数加到总和中。最后,通过总和除以输入的个数,即可得到平均值。具体实现如下:
```
m = int(input("请输入数字个数:"))
max_num = float('-inf') # 最大数初始化为负无穷
min_num = float('inf') # 最小数初始化为正无穷
sum_num = # 总和初始化为
for i in range(m):
num = float(input("请输入第{}个数字:".format(i+1)))
if num > max_num:
max_num = num
if num < min_num:
min_num = num
sum_num += num
avg_num = sum_num / m
print("最大数为:{}".format(max_num))
print("最小数为:{}".format(min_num))
print("平均值为:{}".format(avg_num))
```
### 回答2:
该问题输入m个数,要求求出这些数中的最大值、最小值和平均值。这是一个比较基础的算法问题,可以使用循环结构和一些简单的算术运算来解决。
首先,我们需要用一个循环结构来输入m个数。如果使用Python语言,则可以使用for循环或者while循环来实现。假设我们使用for循环,代码如下:
```
m = int(input("请输入数字数量:"))
nums = []
for i in range(m):
num = float(input("请输入第%d个数字:" % (i+1)))
nums.append(num)
```
在这段代码中,我们定义了一个空列表nums来存储输入的数字。for循环用于重复输入数字的过程,输入的数字可以是整数或者浮点数。为了更好地与用户交互,我们使用了字符串格式化来生成提示信息。
接下来,我们可以使用内置函数max()和min()来寻找输入数字中的最大值和最小值。代码如下:
```
max_num = max(nums)
min_num = min(nums)
```
这里的max()和min()函数都接受一个可迭代对象作为参数,返回其中的最大值和最小值。
最后,我们可以使用循环结构和一些算术运算来计算平均值。代码如下:
```
total = 0
for num in nums:
total += num
avg_num = total / len(nums)
```
这里的循环用于计算所有数字的总和,然后除以数字的个数得到平均值。
完整代码如下:
```
m = int(input("请输入数字数量:"))
nums = []
for i in range(m):
num = float(input("请输入第%d个数字:" % (i+1)))
nums.append(num)
max_num = max(nums)
min_num = min(nums)
total = 0
for num in nums:
total += num
avg_num = total / len(nums)
print("最大值是%d,最小值是%d,平均值是%f" % (max_num, min_num, avg_num))
```
这样,我们就完成了输入m个数字,求最大值、最小值和平均值的问题。
### 回答3:
假设我们输入的m个数分别为a1,a2,…,am。
首先要找到最大数和最小数,可以定义两个变量max和min,分别用来保存最大值和最小值,然后遍历这m个数,将每个数与当前的最大值和最小值比较,如果比最大值还大,则更新max的值,同理,如果比最小值还小,则更新min的值。
接着,我们可以用一个变量sum来保存这m个数的总和,初始化为0,然后遍历这m个数,将每个数累加到sum中。
最后,求平均值就是将sum除以m即可。
下面是具体的程序实现:
def find_max_and_min(numbers):
max_num = numbers[0]
min_num = numbers[0]
for num in numbers:
if num > max_num:
max_num = num
if num < min_num:
min_num = num
return max_num, min_num
def find_average(numbers):
total_sum = sum(numbers)
average = total_sum / len(numbers)
return average
# 测试代码
numbers = [1, 2, 3, 4, 5, 6, 7]
max_num, min_num = find_max_and_min(numbers)
average = find_average(numbers)
print("最大数是:",max_num)
print("最小数是:",min_num)
print("平均值是:",average)
输出:
最大数是: 7
最小数是: 1
平均值是: 4.0
这个程序可以处理任意数量的数,只需要将这些数存到一个列表或数组中,然后将这个列表或数组作为参数传递给相应的函数即可。
c语言输入m个数,求其最大数、最小数和平均值
以下是一个示例代码:
```c
#include <stdio.h>
int main() {
int m, i;
int max, min, sum;
float avg;
printf("请输入数的个数:");
scanf("%d", &m);
printf("请输入这%d个数:", m);
scanf("%d", &max);
min = max;
sum = max;
for (i = 1; i < m; i++) {
int num;
scanf("%d", &num);
if (num > max) {
max = num;
}
if (num < min) {
min = num;
}
sum += num;
}
avg = (float) sum / m;
printf("最大数:%d\n", max);
printf("最小数:%d\n", min);
printf("平均值:%f\n", avg);
return 0;
}
```
代码中使用 `for` 循环输入了 `m` 个数,同时更新了 `max`、`min` 和 `sum` 变量。最后计算出平均值后输出。需要注意的是,计算平均值时需要将 `sum` 转换为 `float` 类型。
相关推荐
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)