如何使用 Python 列印心形圖案?
簡介
在本文中,我們將重點介紹如何使用 Python 列印心形圖案。我們將深入瞭解程式碼中將使用的函式的語法。我們還將學習方法定義以及方法將接受的引數及其用途。
眾所周知,Python 是一種開源的多功能程式語言,它提供了大量的模組和功能來完成我們的任務。藉助 Python 的簡潔性和可讀性,我們只需幾行程式碼即可將計算機螢幕變成畫布。
學習如何列印心形圖案不僅可以增強我們的程式設計技能,還可以開啟通往無限可能的大門。
這項技能將幫助我們在現實生活中的應用中,例如製作視覺化和圖形。它還有助於增強我們的演算法思維和解決問題的能力。
在本文中,我們將學習所用函式的語法以及解決問題的方法。因此,讓我們深入瞭解一下如何使用 Python 程式語言列印心形圖案。
語法
range(start, stop, step)
range() 函式返回一個數字序列,預設從 0 開始,預設遞增 1,並在指定數字之前停止。
起始值 - 可選,接受一個整數,指定從哪個位置開始。
結束值 - 必需,接受一個整數,指定在哪個位置停止。
步長 - 可選,接受一個整數,指定增量,預設為 1。
方法
此程式從使用者處獲取一個整數作為輸入值,該值決定心形圖案的大小。它根據條件將心形圖案分為上下兩部分,選擇是列印星號 '*' 還是空格 ' '。
以下是以下程式碼的分解 -
首先,從使用者處獲取輸入以確定心形的大小。
使用者的輸入然後儲存在名為“n”的變數中。
列數由大小加 1 確定,即“n”,此值儲存在變數“m”中。
程式碼使用兩個迴圈,一個用於心形圖案的上半部分,一個用於下半部分。
在上半部分,迴圈遍歷 0 到 (n//2 -1) 的範圍,表示行。第二個迴圈遍歷 0 到 m 的範圍,表示列。
當“i”等於 (n//2 -2) 且 j 的值為“0”或“m-1”時,檢查列印上行星號的條件。
如果滿足條件,則檢查左上部分列印星號的條件,即“j”應小於 (m//2) 並滿足以下任一條件
(i + j) equals (n // 2 - 3) and 'j' is less than or equal to (m // 4). (j - i) equals (m // 2 - n // 2 + 3) and 'j' is greater than (m // 4).
如果滿足條件,則檢查右上部分列印星號的條件,即“j”應大於 (m//2) 並滿足以下任一條件
(i + j) equals (n // 2 - 3 + m // 2) and 'j' is less than (3 * m // 4). (j - i) equals (m // 2 - n // 2 + 3 + m // 2) and 'j' is greater than or equal to (3 * m // 4)
如果都不滿足條件,則程式將進入 else 部分並列印空格“ ”。
要列印下半部分,迴圈遍歷從 (n//2-1) 到 'n' 的範圍。
如果 (i-j) 等於 (n//2-1) 或 (i+j) 等於 (n-1 +m//2),則列印星號 '*',否則列印空格 ' '。
列印心形圖案後,程式終止。
此程式碼獲取使用者輸入的大小,並根據提供的大小在控制檯上列印心形圖案。
示例
# Define the size of the heart pattern (n should be even)
def print_heart(size):
n=size
m=size+1
# Loop for the upper part of the heart
for i in range(n // 2 - 1):
for j in range(m):
# Condition for printing stars in the upper line
if i == n // 2 - 2 and (j == 0 or j == m - 1):
print("*", end=" ")
# Condition for printing stars in the left upper part
elif j <= m // 2 and ((i + j == n // 2 - 3 and j <= m // 4) \ or (j - i == m // 2 - n // 2 + 3 and j > m // 4)):
print("*", end=" ")
# Condition for printing stars in the right upper part
elif j > m // 2 and ((i + j == n // 2 - 3 + m // 2 and j < 3 * m // 4) \ or (j - i == m // 2 - n // 2 + 3 + m //2 and j >= 3 * m // 4)):
print("*", end=" ")
# Condition for printing spaces
else:
print(" ", end=" ")
print()
# Loop for the lower part of the heart
for i in range(n // 2 - 1, n):
for j in range(m):
# Condition for printing stars
if (i - j == n // 2 - 1) or (i + j == n - 1 + m // 2):
print('*', end=" ")
# Condition for printing spaces
else:
print(' ', end=" ")
print()
size = int(input("Enter the size of the heart pattern: "))
# Printing the heart pattern
print_heart(size)
輸出
* * * * * * * * * * * * * * * * * * * * * * * *
結論
以上程式碼使用 Python 程式語言編寫,它接受使用者的輸入(一個整數),並在控制檯螢幕上列印心形圖案。
該程式使用迴圈和條件來決定何時列印星號 '*' 和何時列印空格 ' '。該程式將心形圖案分為上下兩部分,以形成完整的心形圖案。我們還可以根據使用者的輸入修改心形圖案的大小。
圖案列印可以幫助我們進行資料視覺化和開發圖形使用者介面,它在遊戲開發和建立藝術設計方面也很有用。
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP