কম্পিউটার

C-তে একটি বিজোড় বর্গ ম্যাট্রিক্সে মাঝের সারি এবং কলামের গুণফল


একটি বর্গাকার ম্যাট্রিক্স দেওয়া হলে, ম্যাট[সারি][কলাম] যেখানে সারি এবং কলাম সমান এবং বিজোড় দৈর্ঘ্যের মানে সারি এবং কলামের সংখ্যা অবশ্যই আমাকে বিজোড় করতে হবে, অর্থাৎ, দ্বারা বিভাজ্য নয় 2, কাজটি হল সেই ম্যাট্রিক্সের মাঝের সারি এবং মধ্য কলামের গুণফল খুঁজে বের করা।

নিচের চিত্রের মত -

C-তে একটি বিজোড় বর্গ ম্যাট্রিক্সে মাঝের সারি এবং কলামের গুণফল

সীমাবদ্ধতা

  • ম্যাট্রিক্স অবশ্যই একটি বর্গ ম্যাট্রিক্স হতে হবে।

  • কলাম এবং সারি বিজোড় দৈর্ঘ্যের হতে হবে।

ইনপুট

mat[][] = {{1, 2, 3},
{4, 5, 6},
{7, 8, 9}}

আউটপুট

Product of middle row = 120
Product of middle column = 80

ব্যাখ্যা

Product of middle row = 4 * 5 * 6 = 120
Product of middle column = 2 * 5 * 8 = 80

ইনপুট

mat[][] = {{3, 5, 0},
{1, 2, 7},
{9, 0, 5}}

আউটপুট

Product of middle row = 14
Product of middle column = 0

ব্যাখ্যা

Product of middle row = 1 * 2 * 7 = 120
Product of middle column = 5 * 2 * 0 = 0

সমস্যা সমাধানের জন্য নিচের পদ্ধতিটি ব্যবহার করা হয়েছে

  • একটি ইনপুট হিসাবে একটি ম্যাট্রিক্স ম্যাট[][] নিন।

  • মধ্যবর্তী সারি এবং মধ্য কলাম থেকে ম্যাট্রিক্সকে অতিক্রম করুন

  • মাঝের সারি এবং মাঝের কলামের গুণফল গণনা করুন এবং ফলাফলটি ফেরত দিন।

অ্যালগরিদম

Start
In function int product(int mat[][MAX], int n)
   Step 1→ Declare and initialize rproduct = 1, cproduct = 1
   Step 2→ Loop For i = 0 and i < n and i++
      Set rproduct = rproduct * mat[n / 2][i]
      Set cproduct = cproduct * mat[i][n / 2]
   Step 3→ Print "Product of middle row: rproduct “
   Step 4→ Print "Product of middle column: cproduct”
In function int main()
   Step 1→ Declare and initialize mat[][MAX] {
      { 1, 2, 3 },
      { 4, 5, 6 },
      { 7, 8, 9 } }
   Step 2→ Call product(mat, MAX)
Stop

উদাহরণ

#include <stdio.h>
#define MAX 3
int product(int mat[][MAX], int n){
   int rproduct = 1, cproduct = 1;
   //We will only check the middle elements and
   //find their products
   for (int i = 0; i < n; i++) {
      rproduct *= mat[n / 2][i];
      cproduct *= mat[i][n / 2];
   }
   // Printing the result
   printf("Product of middle row: %d\n", rproduct);
   printf("Product of middle column: %d\n", cproduct);
   return 0;
}
// Driver code
int main(){
   int mat[][MAX] = {
      { 1, 2, 3 },
      { 4, 5, 6 },
      { 7, 8, 9 } };
   product(mat, MAX);
   return 0;
}

আউটপুট

উপরের কোডটি চালালে এটি নিম্নলিখিত আউটপুট −

উৎপন্ন করবে
Product of middle row: 120
Product of middle column: 80

  1. কিভাবে মাইক্রোসফ্ট এক্সেলে সারির উচ্চতা এবং কলামের প্রস্থ পরিবর্তন করবেন

  2. পাইথনে সারি এবং কলাম অনুসারে সাজানো ম্যাট্রিক্স থেকে সাজানো ক্রমে সমস্ত উপাদান প্রিন্ট করতে

  3. কিভাবে মাইক্রোসফ্ট এক্সেলে সারি এবং কলাম ফ্রিজ করবেন

  4. অটোফিট কলামের প্রস্থ এবং এক্সেলের সারি উচ্চতা