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

ค้นหาการติดตามของเมทริกซ์ที่เกิดขึ้นโดยการเพิ่มลำดับแถวหลักและคอลัมน์หลักของเมทริกซ์เดียวกันใน C++ Program


ในบทช่วยสอนนี้ เราจะเขียนโปรแกรมที่ค้นหาการติดตามของเมทริกซ์ที่เกิดจากเมทริกซ์หลักของแถวและคอลัมน์

เรามาดูวิธีการสร้างเมทริกซ์หลักแถวและคอลัมน์เมื่อกำหนดลำดับของเมทริกซ์

คำสั่งซื้อ − 3 x 3

เมทริกซ์แถวหลัก

1 2 3
4 5 6
7 8 9

เมทริกซ์เมทริกซ์คอลัมน์

1 4 7
2 5 8
3 6 9

เรามีเมทริกซ์เมเจอร์แถวและคอลัมน์ ตอนนี้ เราต้องบวกเมทริกซ์ทั้งคู่ และการติดตามของเมทริกซ์ผลลัพธ์ก็คือผลลัพธ์ที่เรากำลังมองหา

มาดูการเขียนโค้ดเพื่อแก้ปัญหากัน เราต้องทำ 4 ขั้นตอนต่อไปนี้ให้เสร็จเพื่อแก้ไขปัญหาให้เสร็จสิ้น

  • สร้างเมทริกซ์แถวหลัก

  • สร้างเมทริกซ์คอลัมน์หลัก

  • เพิ่มเมทริกซ์ทั้งสองและเก็บเมทริกซ์ผลลัพธ์

  • ค้นหาการติดตามของเมทริกซ์ผลลัพธ์และพิมพ์ผลลัพธ์

ตัวอย่าง

มาดูโค้ดกันเลย

#include <iostream>
#include <bits/stdc++.h>
#include <regex>
using namespace std;
int traceOfRowAndColumnMajorMatrices(int m, int n) {
   int row_major[m][n], column_major[m][n], addition_result[m][n], count = 1;
   for (int i = 0; i < m; i++) {
      for (int j = 0; j < n; j++) {
         row_major[i][j] = count;
         count += 1;
      }
   }
   count = 1;
   for (int i = 0; i < m; i++) {
      for (int j = 0; j < n; j++) {
         column_major[j][i] = count;
         count += 1;
      }
   }
   for (int i = 0; i < m; i++) {
      for (int j = 0; j < n; j++) {
         addition_result[j][i] = row_major[i][j] + column_major[i][j];
      }
   }
   int trace = 0;
   for (int i = 0; i < m; i++) {
      for (int j = 0; j < n; j++) {
         if (i == j) {
            trace += addition_result[i][j];
         }
      }
   }
   return trace;
}
int main() {
   int m = 3, n = 3;
   cout << traceOfRowAndColumnMajorMatrices(m, n) << endl;
   return 0;
}

ผลลัพธ์

หากคุณรันโปรแกรมข้างต้น คุณจะได้ผลลัพธ์ดังต่อไปนี้

30

บทสรุป

หากคุณมีข้อสงสัยใดๆ ในบทแนะนำ โปรดระบุในส่วนความคิดเห็น