编写matlab程序实现:从一个数组中去掉一个最大值,再去掉一个最小值,剩下的值求平均。并随机生成一个数组,验证程序。
时间: 2023-05-29 11:02:41 浏览: 1278
以下是一个可能的实现:
```matlab
% 随机生成一个长度为 10 的数组
A = randi([1, 100], 1, 10);
disp(A);
% 找出最大值和最小值的索引
[~, max_idx] = max(A);
[~, min_idx] = min(A);
% 去掉最大值和最小值
A([max_idx, min_idx]) = [];
% 计算平均值
mean_value = mean(A);
disp(mean_value);
```
这里使用了 `randi` 函数生成了一个长度为 10 的随机数组。然后通过 `max` 和 `min` 函数找到最大值和最小值的索引。注意,我们使用了 `~` 来表示不需要返回的值。最后使用 `mean` 函数计算平均值。
例如,运行上面的代码可能输出:
```
52 60 75 10 77 8 48 82 16 5
52.7778
```
这说明去掉最大值和最小值后剩下的 8 个值的平均值是约 52.78。
阅读全文