使用字元列印門墊紋理的Python程式
假設我們有兩個數字n和m,m是n的倍數。我們必須使用一個詞語,例如“WELCOME”,在中間繪製一個門墊圖案。門墊尺寸將為n x m。我們必須使用點(.)、連字元(-)、豎線符號(|)和中間的文字來製作這個門墊。
因此,如果輸入類似於n = 5 m = 15,則輸出將為
------.|.------ ---.|..|..|.--- ----WELCOME---- ---.|..|..|.--- ------.|.------
為了解決這個問題,我們將遵循以下步驟:
- 對於範圍從1到n-1,以2遞增的i,執行以下操作:
- 列印(((m-i*3)/2)的整數個'-’、然後i個'.|.'、然後(((m-i*3)/2)的整數個'-’
- 列印(((m-7)/2)的整數個'-’、然後'WELCOME'、然後(((m-7)/2)的整數個'-’
- 對於範圍從n-2到-1,以2遞減的i,執行以下操作:
- 列印(((m-i*3)/2)的整數個'-’、然後i個'.|.'、然後(((m-i*3)/2)的整數個'-’
示例
讓我們看看下面的實現,以便更好地理解
def solve(n, m):
for i in range(1,n,2):
print ('-'*int((m-i*3)/2)+'.|.'*i+'-'*int((m-i*3)/2))
print('-'*int((m-7)/2)+'WELCOME'+'-'*int((m-7)/2))
for i in range(n-2,-1,-2):
print ('-'*int((m-i*3)/2)+'.|.'*i+'-'*int((m-i*3)/2))
n = 15
m = 45
solve(n, m)輸入
15,45
輸出
---------------------.|.--------------------- ------------------.|..|..|.------------------ ---------------.|..|..|..|..|.--------------- ------------.|..|..|..|..|..|..|.------------ ---------.|..|..|..|..|..|..|..|..|.--------- ------.|..|..|..|..|..|..|..|..|..|..|.------ ---.|..|..|..|..|..|..|..|..|..|..|..|..|.--- -------------------WELCOME------------------- ---.|..|..|..|..|..|..|..|..|..|..|..|..|.--- ------.|..|..|..|..|..|..|..|..|..|..|.------ ---------.|..|..|..|..|..|..|..|..|.--------- ------------.|..|..|..|..|..|..|.------------ ---------------.|..|..|..|..|.--------------- ------------------.|..|..|.------------------ ---------------------.|.---------------------
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP