কম্পিউটার

C++ এ ম্যাট্রিক্সের জিগজ্যাগ (বা তির্যক) ট্রাভার্সাল


এই সমস্যায়, আমাদের একটি 2D ম্যাট্রিক্স দেওয়া হয়েছে। আমাদের কাজ হল ম্যাট্রিকের সমস্ত উপাদানকে একটি তির্যক ক্রমে প্রিন্ট করা।

সমস্যাটি বোঝার জন্য একটি উদাহরণ দেওয়া যাক,

1 2 34 5 67 8 9

আউটপুট -

14 27 5 38 69

একটি জিগজ্যাগ ফর্ম বা তির্যক আকারে ম্যাট্রিক্স প্রিন্ট করার সময় যে প্যাটার্ন অনুসরণ করা হয় তা দেখা যাক৷

C++ এ ম্যাট্রিক্সের জিগজ্যাগ (বা তির্যক) ট্রাভার্সাল

এইভাবে তির্যক ট্রাভার্সাল কাজ করে।

আউটপুটে লাইনের সংখ্যা সবসময় 2D ম্যাট্রিক্সের সারি এবং কলামের উপর নির্ভর করে।

একটি 2D ম্যাট্রিক্স ম্যাট[r][c] এর জন্য, তাদের হবে r+c-1 আউটপুট লাইন।

উদাহরণ

এখন, প্রোগ্রামটির সমাধান দেখা যাক,

#include  namespace std ব্যবহার করে;#define R 5#define C 4int min2(int a, int b){ রিটার্ন (a  b)? a:b; } void printDiagonalMatrix(int ​​matrix[][C]){এর জন্য (int line=1; line<=(R + C -1); line++){ int start_col =max(0, line-R); int count =min3(লাইন, (C-start_col), R); (int j=0; j 

আউটপুট

ম্যাট্রিক্স হল :1 2 3 45 6 7 89 10 11 1213 14 15 1617 18 19 20ZigZag (তির্যক) ম্যাট্রিক্সের ট্রাভার্সাল হল :15 29 6 313 10 7 417 1218> 
  1. C++ এ ডায়াগোনাল ট্রাভার্স II

  2. C++ এ জিগজ্যাগ ট্রি ট্রাভার্সাল

  3. C++ এ স্পাইরাল ম্যাট্রিক্স III

  4. C++-এ idempotent ম্যাট্রিক্স চেক করার প্রোগ্রাম