Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

ค้นหาเวกเตอร์เฉลี่ยของเมทริกซ์ใน C++


สมมติว่าเรามีเมทริกซ์ของคำสั่ง M x N เราต้องหาค่าเฉลี่ยเวกเตอร์ของเมทริกซ์ที่ให้มา ดังนั้นหากเมทริกซ์เป็นเหมือน −

1 2 3
4 5 6
7 8 9

จากนั้นเวกเตอร์เฉลี่ยคือ [4, 5, 6] เนื่องจากค่าเฉลี่ยของแต่ละคอลัมน์คือ (1 + 4 + 7)/3 =4, (2 + 5 + 8)/3 =5 และ (3 + 6 + 9 )/3 =6

จากตัวอย่าง เราสามารถระบุได้อย่างง่ายดายว่าหากเราคำนวณค่าเฉลี่ยของแต่ละคอลัมน์จะเป็นเวกเตอร์เฉลี่ย

ตัวอย่าง

#include<iostream>
#define M 3
#define N 3
using namespace std;
void calculateMeanVector(int mat[M][N]) {
   cout << "[ ";
   for (int i = 0; i < M; i++) {
      double average = 0.00;
      int sum = 0;
      for (int j = 0; j < N; j++)
      sum += mat[j][i];
      average = sum / M;
      cout << average << " ";
   }
   cout << "]";
}
int main() {
   int mat[M][N] = {{ 1, 2, 3 },
      { 4, 5, 6 },
      { 7, 8, 9 }
   };
   cout << "Mean vector is: ";
   calculateMeanVector(mat);
}

ผลลัพธ์

Mean vector is: [ 4 5 6 ]