কম্পিউটার

স্পার্স ম্যাট্রিক্স বাস্তবায়নের জন্য C++ প্রোগ্রাম


একটি স্পার্স ম্যাট্রিক্স হল একটি ম্যাট্রিক্স যার বেশিরভাগ উপাদান 0। এর জন্য একটি উদাহরণ নিম্নরূপ দেওয়া হল।

নিচের ম্যাট্রিক্সে ৫টি শূন্য রয়েছে। যেহেতু শূন্যের সংখ্যা ম্যাট্রিক্সের উপাদানের অর্ধেকেরও বেশি তাই এটি একটি স্পার্স ম্যাট্রিক্স।

5 0 0
3 0 1
0 0 9

একটি স্পার্স ম্যাট্রিক্স বাস্তবায়নের একটি প্রোগ্রাম নিম্নরূপ।

উদাহরণ

#include<iostream>
using namespace std;
int main () {
   int a[10][10] = { {0, 0, 9} , {5, 0, 8} , {7, 0, 0} };
   int i, j, count = 0;
   int row = 3, col = 3;
   for (i = 0; i < row; ++i) {
      for (j = 0; j < col; ++j){
         if (a[i][j] == 0)
         count++;
      }
   }
   cout<<"The matrix is:"<<endl;
   for (i = 0; i < row; ++i) {
      for (j = 0; j < col; ++j) {
         cout<<a[i][j]<<" ";
      }
      cout<<endl;
   }
   cout<<"The number of zeros in the matrix are "<< count <<endl;
   if (count > ((row * col)/ 2))
   cout<<"This is a sparse matrix"<<endl;
   else
   cout<<"This is not a sparse matrix"<<endl;
   return 0;
}

আউটপুট

The matrix is:
0 0 9
5 0 8
7 0 0
The number of zeros in the matrix are 5
This is a sparse matrix

উপরের প্রোগ্রামে, একটি নেস্টেড ফর লুপ ম্যাট্রিক্সে শূন্যের সংখ্যা গণনা করতে ব্যবহৃত হয়। এটি নিম্নলিখিত কোড স্নিপেট ব্যবহার করে প্রদর্শিত হয়।

for (i = 0; i < row; ++i) {
   for (j = 0; j < col; ++j) {
      if (a[i][j] == 0)
      count++;
   }
}

শূন্যের সংখ্যা খুঁজে পাওয়ার পর, লুপের জন্য নেস্টেড ব্যবহার করে ম্যাট্রিক্স প্রদর্শিত হয়। এটি নীচে দেখানো হয়েছে৷

cout<<"The matrix is:"<<endl;
for (i = 0; i < row; ++i) {
   for (j = 0; j < col; ++j) {
      cout<<a[i][j]<<" ";
   }
   cout<<endl;
}

অবশেষে, শূন্য সংখ্যা প্রদর্শিত হয়। যদি শূন্যের গণনা ম্যাট্রিক্সের উপাদানগুলির অর্ধেকের বেশি হয়, তাহলে এটি প্রদর্শিত হয় যে ম্যাট্রিক্সটি একটি স্পার্স ম্যাট্রিক্স অন্যথায় ম্যাট্রিক্সটি একটি স্পার্স ম্যাট্রিক্স নয়।

cout<<"The number of zeros in the matrix are "<< count <<endl;
if (count > ((row * col)/ 2))
cout<<"This is a sparse matrix"<<endl;
else
cout<<"This is not a sparse matrix"<<endl;

  1. C++ এ ইনভোলুটরি ম্যাট্রিক্স চেক করার প্রোগ্রাম

  2. সিজার সাইফার বাস্তবায়নের জন্য C++ প্রোগ্রাম

  3. অ্যাডজাসেন্সি ম্যাট্রিক্স বাস্তবায়নের জন্য C++ প্রোগ্রাম

  4. এটি একটি স্পার্স ম্যাট্রিক্স কিনা তা পরীক্ষা করার জন্য C++ প্রোগ্রাম