নেস্টেড ফর লুপ ব্যবহার করে নানা ধরনের পিরামিড প্যাটার্ন প্রিন্ট করা যায়।
১. বেসিক পিরামিড প্যাটার্ন (Left-aligned)
#include <iostream>
using namespace std;
int main() {
int n = 6, i, j;
for (i = 1; i <= n; i++) {
for (j = 1; j <= i; j++)
cout << "* ";
cout << endl;
}
return 0;
}
আউটপুট
* * * * * * * * * * * * * * * * * * * * *
২. রোটেটেড পিরামিড (Right-aligned / Centered)
#include <iostream>
using namespace std;
int main() {
int n = 6, k = 2 * n - 2;
for (int i = 0; i < n; i++) {
for (int j = 0; j < k; j++)
cout << " ";
for (int j = 0; j <= i; j++)
cout << "* ";
k = k - 2;
cout << endl;
}
return 0;
}
আউটপুট
*
* *
* * *
* * * *
* * * * *
* * * * * *
ব্যাখ্যা
বেসিক পিরামিড
- বাইরের লুপ (i): রো সংখ্যা (১ থেকে n)।
- ভিতরের লুপ (j): প্রতিটি রোতে কতটা তারকা (১ থেকে i)।
রোটেটেড পিরামিড
k = 2*n - 2— প্রাথমিক স্পেস সংখ্যা।- প্রথম ইনার লুপ: স্পেস প্রিন্ট।
- দ্বিতীয় ইনার লুপ: তারকা প্রিন্ট।
k -= 2— প্রতিটি রোতে স্পেস ২ করে কমে।
অন্যান্য প্যাটার্ন: ফুল পিরামিড, ইনভার্টেড পিরামিড, ডায়মন্ড, ফ্লয়েডের ট্রায়্যাঙ্গেল, প্যাসকেল ট্রায়্যাঙ্গেল ইত্যাদি একই লজিকের вариয়েশন।