Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में दिए गए मैट्रिक्स को जिगजैग फॉर्म में प्रिंट करना


इस समस्या में, हमें एक 2-डायमेंशनल मैट्रिक्स दिया गया है। हमारा कार्य मैट्रिक्स का जिगजैग फॉर्म प्रिंट करना है।

उदाहरण

Input: 
12 99 43
10 82 50
15 75 5
Output: 12 99 43 50 82 10 15 75 5

इस समस्या को हल करने के लिए, हम ऐरे के एलिमेंट्स को दोनों दिशाओं में प्रिंट करेंगे (LtoR और RtoL)। और फ्लैग वेरिएबल का उपयोग करके दिशा बदलेंगे।

उदाहरण

#include <iostream> 
using namespace std; 

void printZigZagPattern(int row, int col, int a[][5]) { 
    int evenRow = 0; 
    int oddRow = 1; 
    while (evenRow < row) { 
        for (int i = 0; i < col; i++) { 
            cout << a[evenRow][i] << " "; 
        } 
        evenRow = evenRow + 2; 
        if (oddRow < row) { 
            for (int i = col-1; i >= 0; i--) 
                cout << a[oddRow][i] << " "; 
        } 
        oddRow = oddRow + 2; 
    } 
} 

int main() { 
    int r = 3, c = 3; 
    int mat[][5] = { 
        {12, 99, 43}, 
        {10, 82, 50}, 
        {15, 75, 5} 
    }; 
    cout << "Elements of the matrix in ZigZag manner :\n"; 
    printZigZagPattern(r, c, mat); 
    return 0; 
}

आउटपुट

Elements of the matrix in a ZigZag manner -

12 99 43 50 82 10 15 75 5

  1. C++ में मैट्रिक्स का जिगजैग (या विकर्ण) ट्रैवर्सल C++ में मैट्रिक्स का जिगजैग (या विकर्ण) ट्रैवर्सल

    इस समस्या में, हमें एक 2D मैट्रिक्स दिया गया है। हमारा कार्य मैट्रिक्स के सभी तत्वों को विकर्ण क्रम में प्रिंट करना है। समस्या को समझने के लिए एक उदाहरण लेते हैं, 1 2 3 4 5 6 7 8 9 आउटपुट - 1 4 2 7 5 3 8 6 9 आइए उस पैटर्न को देखें जो मैट्रिक्स को जिगजैग या विकर्ण रूप में प्रिंट

  1. C++ में स्पाइरल मैट्रिक्स III (Spiral Matrix III) C++ में स्पाइरल मैट्रिक्स III (Spiral Matrix III)

    मान लीजिए हमारे पास R पंक्तियों और C स्तंभों वाला एक 2-आयामी ग्रिड है, हम (r0, c0) से शुरू करते हैं और पूर्व की ओर मुख किए होते हैं। यहां, ग्रिड का उत्तर-पश्चिम कोना पहली पंक्ति और स्तंभ पर है, और दक्षिण-पूर्व कोना अंतिम पंक्ति और स्तंभ पर है। हम इस ग्रिड में हर स्थिति को देखने के लिए दक्षिणावर्त स

  1. C++ में दिए गए मैट्रिक्स को काउंटर-क्लॉकवाइज स्पाइरल फॉर्म में प्रिंट करना C++ में दिए गए मैट्रिक्स को काउंटर-क्लॉकवाइज स्पाइरल फॉर्म में प्रिंट करना

    इस समस्या में, हमें एक 2-डायमेंशनल मैट्रिक्स दिया गया है। और हमारा कार्य मैट्रिक्स के एलिमेंट्स को काउंटर-क्लॉकवाइज स्पाइरल फॉर्म में प्रिंट करना है। काउंटरक्लॉकवाइज स्पाइरल फॉर्म यह एक स्पाइरल ट्रैवर्सल है जो टॉप-लेफ्ट से शुरू होता है और फिर काउंटर-क्लॉकवाइज दिशा में पहले बॉटम-राइट-अप-लेफ्ट की ओर