समस्या
मैट्रिक्स की सभी पंक्तियों को आरोही क्रम में और सभी स्तंभों को अवरोही क्रम में क्रमबद्ध करने के लिए एक कोड लिखें। मैट्रिक्स का आकार और मैट्रिक्स के तत्व उपयोगकर्ता द्वारा रनटाइम पर दिए जाते हैं।
समाधान
C प्रोग्रामिंग भाषा में मैट्रिक्स की सभी पंक्तियों को आरोही क्रम में और सभी स्तंभों को अवरोही क्रम में क्रमबद्ध करने का समाधान नीचे समझाया गया है -
पंक्तियों को आरोही क्रम में क्रमबद्ध करने के लिए उपयोग किया जाने वाला तर्क इस प्रकार है -
for (i=0;i<m;++i){ for (j=0;j<n;++j){ for (k=(j+1);k<n;++k){ if (ma[i][j] > ma[i][k]){ a = ma[i][j]; ma[i][j] = ma[i][k]; ma[i][k] = a; } } } }
स्तंभों को अवरोही क्रम में क्रमबद्ध करने के लिए . तर्क का उपयोग किया जाता है इस प्रकार है -
for (j=0;j<n;++j){ for (i=0;i<m;++i){ for (k=i+1;k<m;++k){ if (mb[i][j] < mb[k][j]){ a = mb[i][j]; mb[i][j] = mb[k][j]; mb[k][j] = a; } } } }
कार्यक्रम
निम्नलिखित C प्रोग्राम है मैट्रिक्स की सभी पंक्तियों को आरोही क्रम में और सभी स्तंभों को अवरोही क्रम में सॉर्ट करने के लिए -
#include <stdio.h> void main(){ int i,j,k,a,m,n; static int ma[10][10],mb[10][10]; printf ("Enter the order of the matrix \n"); scanf ("%d %d", &m,&n); printf ("Enter co-efficients of the matrix \n"); for (i=0;i<m;++i){ for (j=0;j<n;++j){ scanf ("%d",&ma[i][j]); mb[i][j] = 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"); } printf ("After arranging rows in ascending order\n"); for (i=0;i<m;++i){ for (j=0;j<n;++j){ for (k=(j+1);k<n;++k){ if (ma[i][j] > ma[i][k]){ a = ma[i][j]; ma[i][j] = ma[i][k]; ma[i][k] = a; } } } } for (i=0;i<m;++i){ for (j=0;j<n;++j){ printf (" %d",ma[i][j]); } printf ("\n"); } printf ("After arranging the columns in descending order \n"); for (j=0;j<n;++j){ for (i=0;i<m;++i){ for (k=i+1;k<m;++k){ if (mb[i][j] < mb[k][j]){ a = mb[i][j]; mb[i][j] = mb[k][j]; mb[k][j] = a; } } } } for (i=0;i<m;++i){ for (j=0;j<n;++j){ printf (" %d",mb[i][j]); } printf ("\n"); } }
आउटपुट
जब उपरोक्त प्रोग्राम को निष्पादित किया जाता है, तो यह निम्नलिखित परिणाम उत्पन्न करता है -
Enter the order of the matrix 3 4 Enter co-efficient of the matrix 1 2 3 4 1 2 3 4 5 1 2 3 The given matrix is 1 2 3 4 1 2 3 4 5 1 2 3 After arranging rows in ascending order 1 2 3 4 1 2 3 4 1 2 3 5 After arranging the columns in descending order 5 2 3 4 1 2 3 4 1 1 2 3