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

โปรแกรม Python พิมพ์ลวดลายพื้นผิวพรมเช็ดเท้าโดยใช้ตัวอักษร


สมมติว่าเรามีตัวเลขสองตัว n และ m, m จะเป็นผลคูณของ n เราต้องวาดลายพรมเช็ดเท้าที่มีคำว่า WELCOME อยู่ตรงกลาง ขนาดเสื่อจะเป็น n x m. เราต้องทำแผ่นนี้โดยใช้จุด (.), ยัติภังค์ (-), สัญลักษณ์ไปป์ (|) และข้อความตรงกลาง

ดังนั้น หากอินพุตเท่ากับ n =5 m =15 เอาต์พุตจะเป็น

------.|.---------.|..|..|.-------ยินดีต้อนรับ-------.|..| ..|.---------.|.------

เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -

  • สำหรับฉันในช่วง 1 ถึง n-1 เพิ่มขึ้น 2 ทำ
    • พิมพ์(จำนวนเต็มของ ((m-i*3)/2) จำนวน '-' ตามด้วยหมายเลข '.|.' ตามด้วยจำนวนเต็มของ ((m-i*3)/2) จำนวน '-'
  • พิมพ์ (จำนวนเต็มของ ((m-7)/2) ของ '-' ตามด้วย 'ยินดีต้อนรับ' ตามด้วยจำนวนเต็มของ ((m-7)/2) ของ '-')
  • สำหรับฉันในช่วง n-2 ถึง -1 ลดลง 2 ทำ
    • พิมพ์(จำนวนเต็มของ ((m-i*3)/2) จำนวน '-' ตามด้วยหมายเลข '.|.' ตามด้วยจำนวนเต็มของ ((m-i*3)/2) จำนวน '-'

ตัวอย่าง

ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น

def dissolve(n, m):for i in range(1,n,2):print ('-'*int((m-i*3)/2)+'.|.'*i+'-' *int((m-i*3)/2)) พิมพ์('-'*int((m-7)/2)+'ยินดีต้อนรับ'+'-'*int((m-7)/2)) สำหรับฉัน in range(n-2,-1,-2):print ('-'*int((m-i*3)/2)+'.|.'*i+'-'*int((m-i*3)/ 2))n =15m =45solve(n, m)

อินพุต

15,45

ผลลัพธ์

<ก่อนหน้า>---------------------------.|.----------------------- ----------------.|..|..|.------------------------- --------.|..|..|..|..|.--------------------------- .|..|..|..|..|..|..|.---------------------------.|..|..| ..|..|..|..|..|..|.--------------.|..|..|..|..|.. |..|..|..|..|..|.---------.|..|..|..|..|..|..|..|. .|..|..|..|..|.---------------------- ยินดีต้อนรับ ------------ ----------.|..|..|..|..|..|..|..|..|..|..|..|..|.- --------.|..|..|..|..|..|..|..|..|..|..|.--------- ------.|..|..|..|..|..|..|..|..|.----------------- ----.|..|..|..|..|..|..|.------------------------- --.|..|..|..|..|.--------------------------------- .|..|..|.---------------------------------------.| .---------------------