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

পাইথনে অ্যালফাবেট ব্যবহার করে রাঙ্গোলি প্যাটার্ন প্রিন্ট করার প্রোগ্রাম

ধরুন আমাদের একটি সংখ্যা n আছে। আমাদের n x n সাইজের অ্যালফাবেট রাঙ্গোলি বানাতে হবে। n অবশ্যই ১ থেকে ২৬-এর মধ্যে থাকবে এবং এটি a-তে শুরু হবে এবং n=26 হলে z-এ শেষ হবে।

উদাহরণস্বরূপ, যদি ইনপুট 5 হয়, তবে আউটপুট হবে:

--------e--------
------e-d-e------
----e-d-c-d-e----
--e-d-c-b-c-d-e--
e-d-c-b-a-b-c-d-e
--e-d-c-b-c-d-e--
----e-d-c-d-e----
------e-d-e------
--------e--------

সমাধানের ধাপসমূহ

  • for i in range n-1 to 0, decrease by 1:
    • for j in range 0 to i-1: "--" প্রিন্ট করুন
    • for j in range n-1 to i+1, decrease by 1: ASCII j+97 ক্যারেক্টার এবং এক্সট্রা "-" প্রিন্ট করুন
    • for j in range i to n-1:
      • যদি j != n-1, তবে ASCII j+97 ক্যারেক্টার এবং "-" প্রিন্ট করুন
      • অন্যথায় শুধু ক্যারেক্টার প্রিন্ট করুন
    • for j in range 0 to 2*i - 1: "-" প্রিন্ট করুন
    • নেক্সট লাইন
  • for i in range 1 to n-1:
    • for j in range 0 to i: "--" প্রিন্ট করুন
    • for j in range n-1 to i+1, decrease by 1: ASCII j+97 ক্যারেক্টার এবং "-" প্রিন্ট করুন
    • for j in range i to n-1:
      • যদি j != n-1, তবে ASCII j+97 ক্যারেক্টার এবং "-" প্রিন্ট করুন
      • অন্যথায় শুধু ক্যারেক্টার প্রিন্ট করুন
    • for j in range 0 to 2*i - 1: "-" প্রিন্ট করুন
    • নেক্সট লাইন

উদাহরণ

নিচের ইমপ্লিমেন্টেশনটি দেখুন ভালো বুঝার জন্য:

def solve(n):
    for i in range(n-1, -1, -1):
        for j in range(i):
            print(end="--")
        for j in range(n-1, i, -1):
            print(chr(j+97), end="-")
        for j in range(i, n):
            if j != n-1:
                print(chr(j+97), end="-")
            else:
                print(chr(j+97), end="")
        for j in range(2*i):
            print(end="-")
        print()
    for i in range(1, n):
        for j in range(i):
            print(end="--")
        for j in range(n-1, i, -1):
            print(chr(j+97), end="-")
        for j in range(i, n):
            if j != n-1:
                print(chr(j+97), end="-")
            else:
                print(chr(j+97), end="")
        for j in range(2*i):
            print(end="-")
        print()

n = 8
solve(n)

ইনপুট

8

আউটপুট

--------------h--------------
------------h-g-h------------
----------h-g-f-g-h----------
--------h-g-f-e-f-g-h--------
------h-g-f-e-d-e-f-g-h------
----h-g-f-e-d-c-d-e-f-g-h----
--h-g-f-e-d-c-b-c-d-e-f-g-h--
h-g-f-e-d-c-b-a-b-c-d-e-f-g-h
--h-g-f-e-d-c-b-c-d-e-f-g-h--
----h-g-f-e-d-c-d-e-f-g-h----
------h-g-f-e-d-e-f-g-h------
--------h-g-f-e-f-g-h--------
----------h-g-f-g-h----------
------------h-g-h------------
--------------h--------------
  1. পাইথনে প্যাটার্ন প্রিন্ট করার পদ্ধতি

  2. পাইথনে লুপ ছাড়া নাম্বার সিরিজ প্রিন্ট করা (রিকার্শন)

  3. পাইথনে NumPy ব্যবহার করে n*n চেকারবোর্ড প্যাটার্ন প্রিন্ট করার প্রোগ্রাম

  4. পাইথনে for লুপ ব্যবহার করে ট্রায়্যাঙ্গেল (ত্রিভুজ) প্রিন্ট করা