python是當(dāng)下十分火爆的編程語言,尤其在人工智能應(yīng)用方面。如果有心從事編程方向的工作,最好到專業(yè)機(jī)構(gòu)深入學(xué)習(xí)、多實踐,更貼近市場,這樣更有利于將來的發(fā)展。
東河網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項目制作,到程序開發(fā),運(yùn)營維護(hù)。成都創(chuàng)新互聯(lián)公司于2013年創(chuàng)立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運(yùn)維經(jīng)驗,來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。
按照你的要求編寫的輸出數(shù)字菱形的Python程序如下(abs是求絕對值的函數(shù))
N=9
for i in range(1,N*2):
for j in range(1,abs(N-i)+1):
print(' ',end='')
for j in range(N-abs(N-i),1,-1):
print(j,end='')
for j in range(1,N-abs(N-i)+1):
print(j,end='')
print()
源代碼(注意源代碼的縮進(jìn))
Python把生成的菱形存入二維表中方法:
直接尋找規(guī)律,發(fā)現(xiàn)前一半的第i行分別輸出了(n+1-2*i)/2個空格和2*i-1個’*’;而后一半就是前一半輸出的倒序。
首先畫一個菱形,看一下規(guī)律在哪里,先看下圖:
見上圖菱形,定義尺寸為size=3,
定義X坐標(biāo)為i:
A區(qū)域X坐標(biāo)為i,Y坐標(biāo)為size-i;
B區(qū)域X坐標(biāo)為i,Y坐標(biāo)為size+i;
C區(qū)域X坐標(biāo)為i,Y坐標(biāo)為i-size;
D區(qū)域X坐標(biāo)為i,Y坐標(biāo)為size*3-i
滿足1,2,3,4的情況下就輸出*,其它則輸入空格,這樣我們就得到一個菱形,代碼如下和輸出效果如下:
size?=?3?#?定義菱形尺寸
count?=?size*2+1?#?定義X,Y坐標(biāo)循環(huán)范圍
#?i為橫坐標(biāo)
for?i?in?range(count):
#?j為縱坐標(biāo)
for?j?in?range(count):?
#?當(dāng)X,Y滿足條件1和2時
if?i?=?size?and?(j?==?size-i?or?j?==?size+i):
print('*',?end='')
#?當(dāng)X,Y滿足條件3和4時
elif?i??size?and?(j?==?i-size?or?j?==?size*3-i):
print('*',?end='')
#?其它情況輸入空格
else:
print('?',?end='')
#?每打印一行就換行
print()
#代碼如下
n = int(input("請輸入菱形邊長整數(shù)n:"))
b = n
c = n
for i in range(1, n + 1): # 先打印正三角,由空格和*根據(jù)規(guī)律組成
print(" " * (b - 1), "*" * (2 * i - 1))
b -= 1
if i == n: # 臨界點(diǎn),當(dāng)打印到此,開始打印倒三角
for y in range(1, n):
print(" " * y, "*" * (2*c-3))
c -= 1
---------代碼運(yùn)行結(jié)果,可自己測試
請輸入菱形邊長整數(shù)n:4
*
***
*****
*******
*****
***
*
菱形是正方形受到擠壓后變形得到的,受到的擠壓程度不同,他的角大小不同。但是期間不變的是他的對角線垂直,就這個條件你可以利用。
分享題目:python菱形函數(shù)法,菱形Python
文章位置:http://muchs.cn/article28/phepjp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、網(wǎng)站營銷、搜索引擎優(yōu)化、網(wǎng)站建設(shè)、網(wǎng)站設(shè)計公司、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)