最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python 使用while循環(huán)輸出*組成的菱形實(shí)例

 更新時(shí)間:2020年04月12日 10:47:44   作者:百奎先生  
這篇文章主要介紹了python 使用while循環(huán)輸出*組成的菱形實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

一,python輸出*組成的菱形(實(shí)心):

python代碼:

x = int(input('請(qǐng)輸入最長(zhǎng)行的*的個(gè)數(shù):'))
y = int(input('請(qǐng)輸入每個(gè)*之間的間隔:'))
i = 1
while i<= x: #第一個(gè)while組成菱形上半部
 j = 1
 k = 1
 while k <= x-i:
  print(' '*y,end = '') #每一行最左邊到第一個(gè)*之間的空格
  k += 1
 while j <= i:
  print('*', end=' '*(2*y-1)) #每一行*的個(gè)數(shù)和*與*之間的間隔,要計(jì)算好才能上下對(duì)齊
  j += 1
 print('\n')
 i += 1
while i <= 2*x-1: #第二個(gè)while組成菱形下半部
 a = x+1
 b = 2*x-1
 while a <= i:
  print(' '*y, end='')
  a += 1
 while b >= i:
  print('*', end=' '*(2*y-1))
  b -= 1
 print('\n')
 i += 1

二,python輸出*組成的菱形(空心):

代碼

x = int(input('請(qǐng)輸入最長(zhǎng)行的*的個(gè)數(shù):'))
y = int(input('請(qǐng)輸入每個(gè)*之間的間隔:'))
i = 1
#前兩個(gè)while組成上半部
while i <= 1:  #菱形上頂點(diǎn)單獨(dú)列出
 k = 1   #寫出最左邊到*的空格和第一個(gè)*
 while k <= x - i: 
  print(' ' * y, end='')
  k += 1
 print('*')
 print('\n')
 i += 1
while i<= x: 
 k = 1
 j = 1
 while k <= x-i:  #這個(gè)while寫出最左邊到左邊*的空格數(shù)
  print(' '*y,end = '')
  k += 1
 print('*', end=' '*(2*y-1)) #這寫出左邊*,*相當(dāng)于占一個(gè)空格,所以*后面的空格少一個(gè),才能上下對(duì)齊
 while j <= i-2:    #這個(gè)while寫出左邊*到右邊*的空格數(shù)
  print(' '*2*y,end='')
  j += 1
 print('*')    #這寫出右邊*
 print('\n')
 i += 1
#后兩個(gè)while組成下半部
while i <= 2*x-2:  
 k = x+1
 j = 2*x-2
 while k <= i:
  print(' '*y, end='')
  k += 1
 print('*', end=' '*(2*y-1))
 while j-1 >= i:
  print(' ' *2* y, end='')
  j -= 1
 print('*',end='')
 print('\n')
 i += 1
while i <= 2*x-1:  #菱形下頂點(diǎn)單獨(dú)列出
 k = 2 * x - 1
 while k >= i+2 - x:
  print(' '*y, end='')
  k -= 1
 print('*')
 print('\n')
 i += 1

補(bǔ)充知識(shí):Python -- 使用循環(huán)語句永 “ * ” 輸出一個(gè)對(duì)線菱形

#使用循環(huán)語句輸出一個(gè)對(duì)線菱形
layer = int(input("請(qǐng)輸入要打印的層數(shù):")) 
#保證輸入的數(shù)字是奇數(shù)
while layer % 2 == 0:
	#偶數(shù)
	layer = int(input("輸入層數(shù),必須是一個(gè)奇數(shù):"))
#上半部分
for x in range(1, layer // 2 + 2):
	# 先打印空格
	space_num = layer - x
	for y in range(1, space_num + 1):
		print(" ", end="")

	# 在打印*
	star_num = 2 * x - 1
	for y in range(1, star_num + 1):
		if y == 1 or y == star_num or x == layer // 2 + 1 or y == star_num // 2 + 1:
			print("*", end="")
		else:
			print(" ", end="")
	# 換行
	print("") 
#下半部分
for x in range(layer // 2, 0, -1):
	# 先打印空格
	space_num = layer - x
	for y in range(1, space_num + 1): 
		print(" ", end="")

	# 在打印*
	star_num = 2 * x - 1
	for y in range(1, star_num + 1):
		if y == 1 or y == star_num or x == layer // 2 + 1 or y == star_num // 2 + 1:
			print("*", end="")
		else:
			print(" ", end="")
	# 換行
	print("")

輸出舉例:

以上這篇python 使用while循環(huán)輸出*組成的菱形實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

叶城县| 安丘市| 松江区| 青田县| 明水县| 寻甸| 咸丰县| 夏河县| 新建县| 柘城县| 高清| 阿荣旗| 朝阳区| 舞阳县| 霍林郭勒市| 湘潭县| 富民县| 五河县| 化州市| 石林| 湖南省| 玛纳斯县| 汝州市| 通化县| 兰西县| 安丘市| 耒阳市| 昭通市| 新建县| 株洲县| 奇台县| 江北区| 保康县| 天柱县| 剑川县| 新源县| 化德县| 华阴市| 读书| 鸡东县| 荔波县|