練習內容:空實心圓形 勾股定理
完整**和注釋如下
def circle(r):
#空心圓
hollow_quarter_circle_rd=[[' 'for x in range(r*2+1)]for y in range(r+1)]#建立圓的右下角四分之一的列表
hollow_half_circle_right=#建立圓的右半邊的列表
hollow_whole_circle=#建立整個圓的列表
for y in range(r+1):#填充四分之一圓
half_chord=round((r**2-y**2)**0.5)#half_chord 弦長的一半 利用勾股定理y^2+x^2=r^2
hollow_quarter_circle_rd[y][half_chord*2]='o'#豎向填充
hollow_quarter_circle_rd[half_chord][y*2]='o'#橫向填充
for y in range(r+1):#將圓的右下角四分之一沿x軸對稱翻轉填充到圓的右半邊的列表內
for y in range(r+1):#填充圓的右下角四分之一到圓的右半邊的列表內
for y in range(r*2+2):#將圓的右半部分沿y軸對稱翻轉填充到整個圓的列表內
hollow_whole_circle[y]=hollow_whole_circle[y][::-1]#填充後每行列表翻轉
hollow_whole_circle[y]+=' '#填充最中間的一列
for y in range(r*2+2):#將圓的右半部分填充到整個圓的列表
hollow_whole_circle[y].extend(hollow_half_circle_right[y])
for y in range(r*2+2):#列印出圓
for x in range(r*4+3):
print(hollow_whole_circle[y][x],end='')
print()
print()
#實心圓
quarter_circle_rd=[[' 'for x in range(r*2+1)]for y in range(r+1)]#建立圓的右下角四分之一的列表
half_circle_right=#建立圓的右半邊的列表
half_circle_right_x_coordinate=#建立圓的右半邊的x值列表
whole_circle=#建立整個圓的列表
for y in range(r+1):#填充四分之一圓
half_chord=round((r**2-y**2)**0.5)#half_chord 弦長的一半 利用勾股定理y^2+x^2=r^2
quarter_circle_rd[y][half_chord*2]='o'#豎向填充
quarter_circle_rd[half_chord][y*2]='o'#橫向填充
for y in range(r+1):#將圓的右下角四分之一沿x軸對稱翻轉填充到圓的右半邊的列表內
for y in range(r+1):#填充圓的右下角四分之一到圓的右半邊的列表內
for y in range(r*2+2):#獲取圓的右半邊的x值
for x in range(r*2+1):
if half_circle_right[y][x]=='o':
break#對於每一行取到第乙個值就退出x的迴圈
for y in range(r*2+2):#填充內部
for x in range(half_circle_right_x_coordinate[y]):
half_circle_right[y][x]='o'
for y in range(r*2+2):#填充兩個符號中間的空格 o o→ooo
for x in range(r*2+1-2):
if half_circle_right[y][x]=='o' and half_circle_right[y][x+2]=='o':#如果有兩個連著的o
half_circle_right[y][x+1]='o'#兩個o中間的空格變為o
for y in range(r*2+2):#將圓的右半部分沿y軸對稱翻轉填充到整個圓的列表內
whole_circle[y]=whole_circle[y][::-1]#填充後每行列表翻轉
whole_circle[y]+='o'#填充最中間的一列
for y in range(r*2+2):#將圓的右半部分填充到整個圓的列表
whole_circle[y].extend(half_circle_right[y])
for y in range(r*2+2):#列印出圓
for x in range(r*4+3):
print(whole_circle[y][x],end='')
print()
circle(20)
任意空實心圓形列印 Python練習系列 8
練習內容 空實心圓形 勾股定理 完整 和注釋如下 def circle r 空心圓 hollow quarter circle rd for x in range r 2 1 for y in range r 1 建立圓的右下角四分之一的列表 hollow half circle right 建立圓...
python列印實心 空心正方形 x形
n float input 請輸入正方形邊長 n int n 1 if n 0 print 您輸入的數字不符合要求 for i in range n for j in range n print end print 輸出結果 1.頭尾單獨列印,中間用迴圈 n float input 請輸入正方形邊長...
python列印等邊三角形(實心,空心)
列印實心等邊三角形 1,3,5,7 所以最多一行的值為row 2 1,空格列印規律為,第row行為0,第row 1行為1,依次類推的話,第一行為n 1個空格,所以思路是輸出row行 外層for迴圈控制 內層兩個for迴圈,乙個控制列印空格,乙個控制列印 如圖 d spf python demo ve...