在 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
广告