এই আর্টিকেলে আমাদের কিছু সারি (rows) এবং কিছু কলাম (columns) এর মান দেওয়া আছে। আমাদের একটি বক্স প্যাটার্ন প্রিন্ট করতে হবে যেন ১ গুলো ১ম সারি, ১ম কলাম, শেষ সারি, শেষ কলামে প্রিন্ট হয় এবং বাকি জায়গায় ০ প্রিন্ট হয়। উদাহরণস্বরূপ:
Input : rows = 5, columns = 4 Output : 1 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 1 1 1 Input : rows = 8, columns = 9 Output : 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1
সমাধানের পদ্ধতি
একটি সহজ পদ্ধতি হতে পারে প্রতিটি সারি এবং কলামে ইটারেট করে চেক করা যে উপাদানটি ১ম সারি, ১ম কলাম, শেষ সারি, বা শেষ কলামে আছে কিনা। হ্যাঁ হলে '১' প্রিন্ট করুন; অন্যথায় বর্ডারের ভেতরে থাকায় '০' প্রিন্ট করুন। এইভাবে আমরা আমার চাওয়া বক্স প্যাটার্ন তৈরি করতে পারি।
উদাহরণ
using namespace std; #include <bits/stdc++.h> // প্যাটার্ন প্রিন্ট করার ফাংশন void create_pattern (int rows, int columns) { int i, j; for (i = 1; i <= rows; i++) { for (j = 1; j <= columns; j++) { // যদি উপাদান ১ম/শেষ সারি বা ১ম/শেষ কলামে থাকে if (i == 1 || i == rows || j == 1 || j == columns) { cout << " 1"; } else { cout << " 0"; } } cout << "\n"; } return; } int main () { int no_of_rows = 7; int no_of_columns = 8; create_pattern (no_of_rows, no_of_columns); return 0; }
আউটপুট
1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1
উপরোক্ত কোডের ব্যাখ্যা
- সারি ও কলামের সংখ্যা দিয়ে create_pattern() ফাংশন কল করা হয়েছে।
- বাহ্যিক লুপ for (i = 1; i <= rows; i++) 1 থেকে rows পর্যন্ত ইটারেট করে সারিগুলোর জন্য।
- অভ্যন্তরীণ লুপ for (j = 1; j <= columns; j++) 1 থেকে columns পর্যন্ত ইটারেট করে কলামগুলোর জন্য।
- চেক করা হয়েছে if (i == 1 || i == rows || j == 1 || j == columns) উপাদানটি ১ম/শেষ সারি বা ১ম/শেষ কলামে আছে কিনা। হ্যাঁ হলে '১' প্রিন্ট, না হলে '০'।
উপসংহার
এই আর্টিকেলে, আমরা দেওয়া সারি ও কলামের সংখ্যা থেকে বক্স প্যাটার্ন প্রিন্ট করা সমাধান করেছি, অর্থাৎ ০-এর মধ্যে ১-এর প্যাটার্ন। আমরা এই সমস্যা সমাধানের জন্য একটি C++ প্রোগ্রাম তৈরি করেছি। একই প্রোগ্রামটি C, Java, Python ইত্যাদি বিভিন্ন ভাষায়ও তৈরি করা সম্ভব। আশা করি আপনি এই আর্টিকেলটিকে উপকারী পাবেন।