在 C++ 中計算大小為 n 的矩陣中 k 的出現頻率,其中矩陣(i, j) = i+j


給定一個整數矩陣,任務是計算給定整數變數(例如 k)在矩陣中的出現頻率。矩陣的大小可以根據使用者的需求而定,在下面的程式中,我們將其設定為 4X4。矩陣將根據給定條件形成,即矩陣(i, j) 將為 i+j。矩陣中第一個資料的索引值為 0 和 0,即 matrix[0][0] = 0。

輸入 − int size = 4, k = 4

輸出 − 4x4 矩陣中 4 的出現次數為 3

解釋

matrix[i][j] = i+j where i=j=4
Matrix[4][4] = {
   0, 1, 2, 3
   1, 2, 3, 4
   2, 3, 4, 5
   3, 4, 5, 6
}
The number k i.e. 4 is occurring 3 times in a matrix.

輸入 − int size = 3, k = 1

輸出 − 4x4 矩陣中 2 的出現次數為 2

解釋

matrix[i][j] = i+j where i=j=3
Matrix[3][3] = {
   0, 1, 2
   1, 2, 3
   2, 3, 4
}
The number k i.e. 1 is occurring 2 times in a given matrix.

下面程式中使用的方案如下

  • 輸入 n x n 矩陣的大小和一個將在矩陣中搜索的整數 ‘k’

  • 從 0 開始迴圈 i 到行大小

  • 在迴圈內部,從 0 開始另一個迴圈 j 到列大小

  • 設定 matrix[i][j] = i+j

  • 檢查 IF matrix[i][j] = k

  • 如果是,則將計數加 1,否則忽略資料。

  • 返回計數

  • 列印結果

示例

 即時演示

#include <cmath>
#include <iostream>
using namespace std;
int count(int size, int k){
   int count = 0;
   int matrix[size][size];
   for(int i = 0;i<size;i++){
      for(int j=0; j<size; j++){
         matrix[i][j] = i+j;
         if(matrix[i][j] == k){
            count++;
         }
      }
   }
   return count;
}
int main(){
   int size = 4;
   int k = 4;
   int total = count(size, k);
   if(total>0){
      cout<<"Count of frequency of "<<k<<" in a matrix of size "<<size<<"X"<<vsize<<" where matrix(i, j) = i+j is: "<<total;
   } else {
      cout<<"Frequency of element is 0 that means it is not present in a matrix";
   }
}

輸出

如果我們執行以上程式碼,我們將得到以下輸出:

Count of frequency of 4 in a matrix of size 4X4 where matrix(i, j) = i+j is: 3

更新於: 2020-06-06

236 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

立即開始
廣告
© . All rights reserved.