定义一个数组(二维),按列计算数组的最大值 max,最小值 min,均值
mean,要求每种特征值均为一种函数
#include <iostream>
using namespace std;
void calculateArray(int arr[][3], int rows, int cols) {
int max = arr[0][0];
int min = arr[0][0];
double sum = 0.0;
// 找到最大和最小值
for (int j = 0; j < cols; j++) {
for (int i = 0; i < rows; i++) {
if (arr[i][j] > max) {
max = arr[i][j];
}
if (arr[i][j] < min) {
min = arr[i][j];
}
sum += arr[i][j];
}
double mean = sum / rows;
cout << "最大值: " << max << endl;
cout << "最小值: " << min << endl;
cout << "平均值: " << mean << endl;
}
}
int main() {
int arr[][3] = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9},
{10, 11, 12}
};
int rows = sizeof(arr) / sizeof(arr[0]);
int cols = sizeof(arr[0]) / sizeof(arr[0][0]);
calculateArray(arr, rows, cols);
return 0;
}
我可以给出以下代码来定义一个二维数组,并按列计算最大值,最小值和平均值:
# 定义一个3x4的二维数组
arr = [[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12]]
# 函数来计算列的最大值
def col_max(matrix):
return [max(col) for col in zip(*matrix)]
# 函数来计算列的最小值
def col_min(matrix):
return [min(col) for col in zip(*matrix)]
# 函数来计算列的平均值
def col_avg(matrix):
return [sum(col)/len(col) for col in zip(*matrix)]
# 调用函数计算数组的列的最大值、最小值和平均值
print(col_max(arr))
print(col_min(arr))
print(col_avg(arr))
这个代码可以输出每列的最大值、最小值和平均值。对于每个特征,可以分别使用以上三个函数来计算。所以不需要为每个特征编写一个独立的函数。