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

นับความถี่ของ k ในเมทริกซ์ขนาด n โดยที่ matrix(i, j) =i+j ใน C++


เราได้รับเมทริกซ์ของค่าจำนวนเต็มและภารกิจคือการคำนวณการนับความถี่ของตัวแปรจำนวนเต็มที่กำหนด สมมติว่า k ในเมทริกซ์ ขนาดของเมทริกซ์ขึ้นอยู่กับขนาดที่ผู้ใช้ต้องการ และในโปรแกรมด้านล่าง เราจะกำหนดให้เป็น 4X4 เมทริกซ์จะเกิดขึ้นตามเงื่อนไขที่กำหนด เช่น เมทริกซ์(i, j) จะเป็น i+j ค่าดัชนีของข้อมูลแรกในเมทริกซ์จะเป็น 0 และ 0 เช่น matrix[0][0] =0

ป้อนข้อมูล − ขนาด int =4, k =4

ผลผลิต - นับ 4 ในเมทริกซ์ที่กำหนด 4x4 คือ 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 =3, k =1

ผลผลิต - นับ 2 ในเมทริกซ์ที่กำหนด 4x4 คือ 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' ที่จะค้นหาในเมทริกซ์

  • เริ่มการวนซ้ำ i จาก 0 จนถึงขนาดแถว

  • ภายในลูปเริ่มลูปอื่น j จาก 0 จนถึงขนาดคอลัมน์

  • ตั้งค่าเมทริกซ์[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