Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

सी प्रोग्राम दिए गए मैट्रिक्स में विकर्ण तत्वों को बदलने के लिए

समस्या

हमें मुख्य विकर्ण तत्वों को द्वितीयक विकर्ण तत्वों के साथ बदलने के लिए एक कोड लिखना होगा। मैट्रिक्स का आकार रनटाइम पर दिया जाता है।

यदि मैट्रिक्स का आकार m और n मान समान नहीं हैं, तो यह प्रिंट करता है कि दिया गया मैट्रिक्स एक वर्ग नहीं है।

केवल एक वर्ग मैट्रिक्स मुख्य विकर्ण तत्वों को बदल सकता है और द्वितीयक विकर्ण तत्वों के साथ इंटरचेंज कर सकता है।

समाधान

दिए गए मैट्रिक्स में विकर्ण तत्वों को इंटरचेंज करने के लिए C प्रोग्राम लिखने का समाधान इस प्रकार है -

विकर्ण तत्वों को आपस में बदलने का तर्क नीचे समझाया गया है -

for (i=0;i<m;++i){
   a = ma[i][i];
   ma[i][i] = ma[i][m-i-1];
   ma[i][m-i-1] = a;
}

उदाहरण

दिए गए मैट्रिक्स में विकर्ण तत्वों को आपस में बदलने . के लिए C प्रोग्राम निम्नलिखित है -

#include<stdio.h>
main (){
   int i,j,m,n,a;
   static int ma[10][10];
   printf ("Enter the order of the matrix m and n\n");
   scanf ("%dx%d",&m,&n);
   if (m==n){
      printf ("Enter the co-efficients of the matrix\n");
      for (i=0;i<m;++i){
         for (j=0;j<n;++j){
            scanf ("%d",&ma[i][j]);
         }
      }
      printf ("The given matrix is \n");
      for (i=0;i<m;++i){
         for (j=0;j<n;++j){
            printf (" %d",ma[i][j]);
         }
         printf ("\n");
      }
      for (i=0;i<m;++i){
         a = ma[i][i];
         ma[i][i] = ma[i][m-i-1];
         ma[i][m-i-1] = a;
      }
      printf ("Matrix after changing the \n");
      printf ("Main & secondary diagonal\n");
      for (i=0;i<m;++i){
         for (j=0;j<n;++j){
            printf (" %d",ma[i][j]);
         }
         printf ("\n");
      }
   }
   else
      printf ("The given order is not square matrix\n");
}

आउटपुट

जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है -

Run 1:
Enter the order of the matrix m and n
3x3
Enter the co-efficient of the matrix
1
2
3
4
5
6
7
8
9
The given matrix is
1 2 3
4 5 6
7 8 9
Matrix after changing the
Main & secondary diagonal
3 2 1
4 5 6
9 8 7

Run 2:
Enter the order of the matrix m and n
4x3
The given order is not square matrix

  1. सी प्रोग्राम में मैट्रिक्स को तिरछे नीचे की ओर प्रिंट करें।

    आकार n x n की एक सरणी के साथ दिया गया है और कार्य पूर्णांक प्रकार के मैट्रिक्स तत्वों को तिरछे नीचे की ओर प्रिंट करना है। तिरछे नीचे की ओर का अर्थ है n x n के किसी भी आकार की सरणी को तिरछे नीचे की ओर ले जाना जैसे नीचे दिए गए चित्र में प्रिंट करना - सबसे पहले यह 1 प्रिंट करेगा और फिर 2 प्रिंट करन

  1. सी प्रोग्राम में दिए गए मैट्रिक्स में शून्यों की संख्या के आधार पर छांटे गए कॉलम का प्रिंट इंडेक्स।

    आकार एनएक्सएम की एक सरणी को देखते हुए जहां एन पंक्तियों की संख्या और एम कॉलम की संख्या है, और कार्य किसी भी कॉलम में मौजूद शून्य की संख्या के आधार पर सॉर्ट ऑपरेशन करने के बाद संबंधित मैट्रिक्स के प्रत्येक कॉलम में शून्य की संख्या को प्रिंट करना है। उदाहरण के लिए यदि 1सेंट कॉलम में 1 शून्य और 2nd .

  1. सी प्रोग्राम में कोने के तत्वों और उनके योग को 2-डी मैट्रिक्स में प्रिंट करें।

    आकार 2X2 की एक सरणी को देखते हुए और चुनौती एक सरणी में संग्रहीत सभी कोने तत्वों के योग को मुद्रित करना है। एक मैट्रिक्स मैट [आर] [सी] मान लें, कुछ पंक्ति आर और कॉलम सी के साथ पंक्ति और कॉलम 0 से शुरू होता है, तो इसके कोने तत्व होंगे; चटाई [0] [0], चटाई [0] [सी -1], चटाई [आर -1] [0], चटाई [आर -1] [स