Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรมพิมพ์รูปแบบ Rangoli ด้วยตัวอักษรใน Python

สมมติว่าเรามีตัวเลข n ต้องสร้าง Alphabet Rangoli ขนาด n x n โดย n อยู่ระหว่าง 1-26 เริ่มจาก a จนถึง z เมื่อ n=26

ตัวอย่าง n = 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 จาก n-1 ลง 0
    • พิมพ์ "--" จำนวน i ครั้ง
    • พิมพ์ตัวอักษรจาก n-1 ลง i+1 คั่น "-"
    • พิมพ์ตัวอักษรจาก i ถึง n-1 คั่น "-" (ตัวสุดท้ายไม่คั่น)
    • พิมพ์ "-" จำนวน 2*i ครั้ง
    • ขึ้นบรรทัดใหม่
  • ลูปล่าง: for i จาก 1 ถึง n-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

เอาต์พุต

(รูปแบบ Rangoli ขนาด 8x8)