কম্পিউটার টিউটোরিয়াল

C প্রোগ্রাম: হেক্সাগোনাল (ষট্কোণাকার) প্যাটার্ন প্রিন্ট করা

এখানে একটি ইন্টিজার 'n' দেওয়া থাকে এবং টাস্ক হলো হেক্সাগোনাল (ষট্কোণাকার) প্যাটার্ন জেনারেট করে ফাইনাল আউটপুট দেখানো।

উদাহরণ

ইনপুট: n=5 আউটপুট:

C প্রোগ্রাম: হেক্সাগোনাল (ষট্কোণাকার) প্যাটার্ন প্রিন্ট করা

ইনপুট: n = 4 আউটপুট:

C প্রোগ্রাম: হেক্সাগোনাল (ষট্কোণাকার) প্যাটার্ন প্রিন্ট করা

প্রোগ্রামে ব্যবহৃত পদ্ধতি নিম্নরূপ −

  • ইউজার থেকে 'n' সংখ্যা ইনপুট নিন
  • পুরো প্যাটার্নকে তিনটি অংশে ভাগ করুন: উপরের অংশ, মাঝপথের অংশ এবং নিচের অংশ
  • উপরের অংশ প্রিন্ট করার জন্য i=0 থেকে i
  • মাঝপথের অংশ প্রিন্ট করার জন্য m=0 থেকে m
  • নিচের অংশ প্রিন্ট করার জন্য h=res থেকে h>=0 পর্যন্ত ডিক্রিমেন্ট করে লুপ চালান
  • স্পেসসহ '*' প্রিন্ট করতে থাকুন

অ্যালগরিদম

START
ধাপ ১ → হেক্সাগোনাল প্যাটার্ন প্রিন্ট করার ফাংশন ডিক্লেয়ার
  void pattern(int n)
  int len = 2 * n - 1 ডিক্লেয়ার ও সেট
  লুপ: i = 0; i < n; i++
    int temp = i + n ডিক্লেয়ার ও সেট
    লুপ: k = 0; k < temp; k++
      IF ((k == n + i - 1) || (k == n - i - 1))
        print *
      ELSE
        print space
      END
    END
    Print \n
  END
  লুপ: m = 0; m < n - 2; m++
    লুপ: j = 0; j < len; j++
      IF (j == 0 || j == len - 1)
        print *
      ELSE
        print space
      END
    END
    Print \n
  END
  int res = n - 1 ডিক্লেয়ার ও সেট
  লুপ: h = res; h >= 0; h--
    int temp2 = h + n ডিক্লেয়ার ও সেট
    লুপ: k = 0; k < temp2; k++
      IF ((k == n + h - 1) || (k == n - h - 1))
        print *
      ELSE
        print space
      END
    END
    Print \n
  END
END
ধাপ ২ → main()-এ
  int n = 5 ডিক্লেয়ার
  pattern(n) কল
STOP

উদাহরণ

#include <stdio.h>
// হেক্সাগন প্যাটার্ন প্রিন্ট করার প্রোগ্রাম
void pattern(int n) {
    int len = 2 * n - 1;
    // প্যাটার্নের উপরের অংশের জন্য for loop
    for (int i = 0; i < n; i++) {
        int temp = i + n;
        for (int k = 0; k < temp; k++) {
            if ((k == n + i - 1) || (k == n - i - 1))
                printf("*");
            else
                printf(" ");
        }
        printf("\n");
    }
    // প্যাটার্নের মাঝপথের অংশের জন্য for loop
    for (int m = 0; m < n - 2; m++) {
        for (int j = 0; j < len; j++) {
            if (j == 0 || j == len - 1)
                printf("*");
            else
                printf(" ");
        }
        printf("\n");
    }
    // প্যাটার্নের নিচের অংশের জন্য for loop
    int res = n - 1;
    for (int h = res; h >= 0; h--) {
        int temp2 = h + n;
        for (int k = 0; k < temp2; k++) {
            if ((k == n + h - 1) || (k == n - h - 1))
                printf("*");
            else
                printf(" ");
        }
        printf("\n");
    }
}
int main() {
    int n = 5;
    pattern(n);
    return 0;
}

আউটপুট

C প্রোগ্রাম: হেক্সাগোনাল (ষট্কোণাকার) প্যাটার্ন প্রিন্ট করা


  1. C প্রোগ্রামিং-এ রেডিক্স সর্ট (Radix Sort)

  2. C প্রোগ্রামিং-এ নেইভ অ্যালগরিদম (Naive Algorithm) প্যাটার্ন সার্চিং-এর জন্য

  3. C প্রোগ্রাম: সমান্তরাল চতুর্ভুজের পরিধি (Circumference) বের করা

  4. C-এ ক্রিসমাস ট্রি প্রিন্ট করার প্রোগ্রাম (এনিমেশন সহ)