龙空技术网

python 打印菱形、三角形、矩形

IT小明 95

前言:

如今兄弟们对“打印菱形的算法”可能比较珍视,大家都想要剖析一些“打印菱形的算法”的相关资讯。那么小编在网上搜集了一些对于“打印菱形的算法””的相关文章,希望朋友们能喜欢,你们快快来学习一下吧!

#coding:utf-8rows = int(raw_input('输入列数: '))i = j = k = 1 #声明变量,i用于控制外层循环(图形行数),j用于控制空格的个数,k用于控制*的个数#等腰直角三角形1print "等腰直角三角形1"for i in range(0, rows): for k in range(0, rows - i): print " * ", #注意这里的",",一定不能省略,可以起到不换行的作用 k += 1 i += 1 print "\n" #打印实心等边三角形print "打印空心等边三角形,这里去掉if-else条件判断就是实心的"for i in range(0, rows + 1):#变量i控制行数 for j in range(0, rows - i):#(1,rows-i) print " ", j += 1 for k in range(0, 2 * i - 1):#(1,2*i) if k == 0 or k == 2 * i - 2 or i == rows: if i == rows: if k % 2 == 0:#因为第一个数是从0开始的,所以要是偶数打印*,奇数打印空格 print "*", else: print " ", #注意这里的",",一定不能省略,可以起到不换行的作用 else: print "*", else: print " ", k += 1 print "\n" i += 1 #打印菱形print "打印空心等菱形,这里去掉if-else条件判断就是实心的"for i in range(rows):#变量i控制行数 for j in range(rows - i):#(1,rows-i) print " ", j += 1 for k in range(2 * i - 1):#(1,2*i) if k == 0 or k == 2 * i - 2: print "*", else: print " ", k += 1 print "\n" i += 1 #菱形的下半部分for i in range(rows): for j in range(i):#(1,rows-i) print " ", j += 1 for k in range(2 * (rows - i) - 1):#(1,2*i) if k == 0 or k == 2 * (rows - i) - 2: print "*", else: print " ", k += 1 print "\n" i += 1#实心正方形print "实心正方形"for i in range(0, rows): for k in range(0, rows): print " * ", #注意这里的",",一定不能省略,可以起到不换行的作用 k += 1 i += 1 print "\n" #空心正方形print "空心正方形"for i in range(0, rows): for k in range(0, rows): if i != 0 and i != rows - 1: if k == 0 or k == rows - 1: #由于视觉效果看起来更像正方形,所以这里*两侧加了空格,增大距离 print " * ", #注意这里的",",一定不能省略,可以起到不换行的作用 else: print " ", #该处有三个空格 else: print " * ", #这里*两侧加了空格 k += 1 i += 1 print "\n"

标签: #打印菱形的算法 #java打印直角三角形奇数行用星星偶数用圆圈 #python用for循环画菱形 #c语言打印空心字母菱形 #编写程序输出空心菱形