精华内容
下载资源
问答
  • python打印空心菱形
    千次阅读
    2022-04-17 21:43:17

    1.题目

    根据您想输入的空心菱形行数,在屏幕中显示出相应的空心菱形图形(注意输入行数必须为:奇数:由于菱形的上下部分相差一行)

    2.代码

     # 因为只有奇数行才能实现上面比下面多一层,依此来实现菱形
    layer =int (input("请输入您想打印空心菱形的层数:"))
    	#上半部分(layer // 2 + 1 层)
    for i in range(1,layer // 2 + 2):  # i为当前的行数,
    	space_num = layer // 2 + 1 - i # 用上半部分的行数减去当前的行数(可以带入特殊值来验证) 
    	for j in range(0,space_num): #如果输入space_num + 1则会导致空格抢占了数字的位置
    		print(" ",end="")
    	star_num = 2 * i - 1
    	for j in range(0,star_num):#理由同上
    		if j == 0 or j == star_num - 1: 
    			print("*",end="")
    		else:
    			print(" ",end="")
    	print("")
    	#下半部分(下半部分是新的一个开始!由于上半部分的循环已经结束(关系到space_num 的使用))
    for i in range(layer // 2,0,-1): #由于菱形是上面的部分比下面的部分多一层,并且菱形的下半部分是打过来打印的即要求步调为-1,且从layer//2开始打印
    	space_num = layer // 2 + 1- i # 用上半部分的行数减去当前的行数(可以带入特殊值来验证) 
    	for j in range(0,space_num): #如果输入space_num + 1则会导致空格抢占了数字的位置
    		print(" ",end="")
    	star_num = 2 * i - 1
    	for j in range(0,star_num):#理由同上
    		if j == 0 or j == star_num - 1: 
    			print("*",end="")
    		else:
    			print(" ",end="")
    	print("")

    3.结果

     

    更多相关内容
  • python打印空心菱形

    2021-12-17 23:18:35
    编写程序,输入菱形的高,输出由星号勾勒出的菱形。 输入格式 行数(正整数) 输出格式 若行数为奇数,则显示星号勾勒出的菱形,否则显示错误信息。 输入样例1 5 输出样例1 * * * * 输入样例2 8 输出样例2 Error
  • 方法一: 结果: 方法二:a = int(input("请输入菱形的层数:"))n = (a+1)/2n = int(n)for i in range(-n+1,n): if i

    打印菱形:

    方法一:

    layer = int(input("请输入你要打印的层数(奇数):"))
    #条件判断:打印的层数必须为奇数
    while layer%2 == 0:
    	layer = int(input("输入错误,请再次输入:"))
    #上半部分
    for i in range(1,layer//2+2):
    	print(" "*(layer-i),end="")
    	for j in range(1,2*i):
    			print("*",end="")
    	print()
    #下半部分
    for i in range(layer//2,0,-1):
    	print(" "*(layer-i),end="")
    	for j in range(1,2*i):
    			print("*",end="")
    	print()

    结果:

     

    方法二

    a = int(input("请输入菱形的层数:"))

    n = (a+1)/2

    n = int(n)

    for i in range(-n+1,n):

            if i<0:

                    j=-i

            else:

                    j=i

            print(" "*j+"*"*(2*n-1-2*j))

    结果:

     


    打印空心菱形:

    打印空心菱形需要加上if else 语句 其他代码和打印菱形相同

    layer = int(input("请输入你要打印的层数(奇数):"))
    #条件判断:打印的层数必须为奇数
    while layer%2 == 0:
    	layer = int(input("输入错误,请再次输入:"))
    #打印图形的上半部分
    for i in range(1,layer//2+2):
    	print(" "*(layer-i),end="")
    	for j in range(1,2*i):
    		if j == 1 or j == 2*i - 1 :
    			print("*",end="")
    		else:
    			print(" ",end="")
    	print()
    #下半部分
    for i in range(layer//2,0,-1):
    	print(" "*(layer-i),end="")
    	for j in range(1,2*i):
    		if j == 1 or j == 2*i - 1:
    			print("*",end="")
    		else:
    			print(" ",end="")
    	print()

    结果:

     

    打印带有对角线的空心菱形:

    打印此图形重点在于打印对角线

    需要在if条件原有的基础上加上相应条件

    (i == layer//2+1 or j == i )

    layer = int(input("请输入你要打印的层数(奇数):"))
    #条件判断:打印的层数必须为奇数
    while layer%2 == 0:
    	layer = int(input("输入错误,请再次输入:"))
    #打印图形的上半部分
    for i in range(1,layer//2+2):
    	print(" "*(layer-i),end="")
    	for j in range(1,2*i):
    		if j == 1 or j == 2*i - 1 or i == layer//2+1 or j == i:
    			print("*",end="")
    		else:
    			print(" ",end="")
    	print()
    #下半部分
    for i in range(layer//2,0,-1):
    	print(" "*(layer-i),end="")
    	for j in range(1,2*i):
    		if j == 1 or j == 2*i - 1 or j == i:
    			print("*",end="")
    		else:
    			print(" ",end="")
    	print()

    结果:

     

    展开全文
  • 打印菱形与空心菱形 一、菱形 (菱形行数数偶数行)分为一个正三角形和一个倒三角形 layer = int(input("请输入打印的行数:")) while layer % 2 == 0: layer = int(input("对不起,请输入奇数行:")) #上半部分 分为...

    打印菱形与空心菱形

    一、菱形
    在这里插入图片描述
    (菱形行数数偶数行)分为一个正三角形和一个倒三角形

    layer = int(input("请输入打印的行数:"))
    while layer % 2 == 0:
    layer = int(input("对不起,请输入奇数行:"))
    #上半部分 分为两个等腰三角形
    for i in range(1,layer // 2 + 2):#上半部分多打印一行 layer=5
    #计算出空格的个数
    space_num = layer - i;
    for j in range(0,space_num):
    print (" ",end="")
    #计算*个数
    star_num = 2 * i -1
    for j in range(0,star_num): 
    print("*",end="")
    print("")
    #下半部分
    for i in range(layer //2 , 0,-1):
    #计算出空格的个数
    space_num = layer - i;
    for j in range(0,space_num):
    print (" ",end="")
    #计算*个数
    star_num = 2 * i -1
    for j in range(0,star_num): #j矛盾吗
    print("*",end="")
    print("")
    

    二、空心菱形

    在这里插入图片描述

    layer = int(input("请输入打印的行数:"))
    while layer % 2 == 0:
    layer = int(input("对不起,请输入奇数行:"))
    #上半部分for i in range(1,layer // 2 + 2): #上半部分多打印一行 layer=5
    #计算出空格的个数
    space_num = layer - i;
    for j in range(0,space_num):
    print (" ",end="")
    #计算*个数
    star_num = 2 * i -1
    for j in range(0,star_num): 
    #判断是不是第一个和最后一个
    if j == 0 or j == star_num -1:
    print("*",end="")
    else:
    print (" ",end="")
    print("")
    #下半部分
    for i in range(layer //2 , 0,-1):
    #计算出空格的个数
    space_num = layer - i;
    for j in range(0,space_num):
    print (" ",end="")
    #计算*个数
    star_num = 2 * i -1
    for j in range(0,star_num): #j矛盾吗
    #判断是不是第一个和最后一个
    if j == 0 or j == star_num -1:
    print("*",end="")
    else:
    print (" ",end="")
    print("")
    
    展开全文
  • 1.打印实心菱形你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。方法一:a = int(input("请输入菱形每条边...

    1.打印实心菱形

    你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

    方法一:

    a = int(input("请输入菱形每条边星星的个数:"))

    b = a

    c = a

    for i in range(1, a + 1): # 先打印正三角,由空格和*根据规律组成

    print(" " * (b - 1), "*" * (2 * i - 1))

    b -= 1

    if i == a: # 临界点,当打印到此,开始打印倒三角

    for y in range(1, a):

    print(" " * y, "*" * (2*c-3))

    c -= 1

    方法二:

    n = int(input("输入要打印的菱形的每个边的元素个数:"))

    list_a = [i for i in range(n)] # 生成前n行的行数列表,例如[0,1,2,3,4]

    list_b = list_a[0:len(list_a) - 1:] # 生成剩余行数列表并反转,例如[0,1,2,3]

    list_c = list_b[::-1] # 对剩余行数列表并反转便于打印操作

    list_d = list_a + list_c # 将两个列表合并

    print(list_d)

    b = [' ' * (n - i) + '*' * (2 * i + 1) for i in list_d] # 根据规律,打印空格" "和"*"

    for line in b:

    print(line)

    打印结果:

    6f25a4888143f1ce1714b81a1ac560e3.png

    2.打印空心菱形

    代码:

    a = int(input("请输入菱形每条边星星的个数:"))

    b = a

    c = a

    print(" " * (a - 1), "*")

    for i in range(2, a+1): # 先打印正三角,由空格和*根据规律组成

    print(" " * (b - 1) + "*" + " " * (2 * i - 3) + "*")

    b -= 1

    if i == a: # 临界点,当打印到此,开始打印倒三角

    for y in range(2, a):

    print(" " * y+"*"+" "*(2*c-5)+ "*" )

    c -= 1

    print(" "*a+"*")

    打印结果:

    ec3472ad7ef4582f330e8964b53e2f0c.png

    以上这篇Python实现打印实心和空心菱形就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持python博客。

    展开全文
  • 如何用二维数组打印空心菱形?#include "stdio.h"main(){int i,j;unsigned char s[11][11];for (j=0;j<11;j )for (i=0;i<11;i ) s[i][j] = '#';for (j=1;j<=5;j )for (i=5-j 1;i<=5 j-1;i )s[i][j] = ' '...
  • Python 请编写程序,输入菱形的高,输出由星号勾勒出的菱形。 输入格式 行数(正整数) 输出格式 若行数为奇数,则显示星号勾勒出的菱形,否则显示错误信息。 输入样例1 5 输出样例1 * * * * 输入样例2 8 输出样例2 ...
  • layer = int(input("请输入要打印的层数:")) # 校验 while layer % 2 == 0: layer = int(input("对不起,请输入奇数行:")) # 9 for i in range(1, layer // 2 + 2): # 5 # 计算出空格的个数 space_num = ...
  • 编程打印如图11.12所示的空心菱形图案。 2.问题分析 该问题要求绘制空心菱形,在此基础上,还可以添加其他要求, 如尽可能少地使用printf语句,或者由键盘输入正数n,并绘制出有 2*n+1行的空心菱形图案。 那么针对...
  • python用来打印空心菱形和三角形

    千次阅读 2018-11-05 09:56:06
    # 用来画上半个空心菱形 for i in range(7): for j in range(6 - i): print(" ", end="") for k in range(i): if k == 0 or k == i - 1: print("*", end=" ") else: print(end=" ") print() # 用来画下半个...
  • 打印空心菱形 ''' * 1 3 1 * * 2 2 3 * * 3 1 5 * * 4 0 7 * * 5 1 5 * * 6 2 3 * 7 3 1 ''' a = int(input("请输入奇数行数:")) if a % 2 == 0: print("输入数字错误!") a = int(input("请重新...
  • ******* ***** *** * 补充知识:Python打印高度为2 * n + 1,宽度为 2 * n + 1的菱形,输出一个由'*'组成的菱形,空白的地方用'.'表示。 很感谢百度和各类的问答平台,CSDN在其中占得多数的,帮我解决了一道又一道的...
  • 给出一个整数N,任务是打印空心菱形图案。示例:输出:## ## ## ## ## ##输入:7## ## ## ## ## ## ## #### ## ## ## #下半部分:对于下半部分,使用迭代给出一个整数N,任务是打印空心菱形图案。示例:输出:##...
  • # 打印一个空心菱形图案--python3.5解释器中调试通过row = 1 # 当前行total_row = int(input("请输入总行数:")) # 总行数half = (total_row + 1) / 2 # 一半while row <= total_row:col = 1while col <= ...
  • 首先应该了解菱形在输出时,每一行的组成有哪些规律,并且除了中间的一行,上部分和下半部分应该是对称的这是一个我们要准备输出的一个菱形的模板 ,一共有7行 7列我们设菱形上半部分的总行数为rows,当前输出行数为...
  • 1.打印实心菱形你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。方法一:a = int(input("请输入菱形每条边...
  • python打印菱形

    2020-11-29 14:48:54
    广告关闭腾讯云11.11云上盛惠 ,精选热门...usrbinpython # -*- coding:utf-8 -*- # 根据输入打印 rows = int(raw_input(please input number:)) #打印菱形上半部分 for i in range(rows): for j in range(rows -...
  • 如下所示:a = int(input("请输入菱形行数:"))m = a #空格d = a #倒三角for i in range(1, a + 1): # 先打印正三角print(" " * (m - 1), "*" * (2 * i - 1)) #2个*参数: 第一个是:空格 第二个是: *根据规律组成m ...
  • 可以起到不换行的作用else:print"*",else:print"",k+=1print"\n"i+=1#打印菱形print"打印空心菱形,这里去掉if-else条件判断就是实心的"foriinrange(rows):#变量i控制行数forjinrange(rows-i):#(1,rows-i)print"",...
  • 三角形 def shape1(): for i in range(1, 5): str1 = "*" * (i * 2 - 1) print(str1.center(7)) if __name__ == "__main__": shape1() ...实心菱形 def shape2(): for i in range(1, 8): ...
  • Python–使用fou循环用( * )打印空心菱形 Python–使用fou循环用( * )打印空心菱形: 例如: layer = int(input("请输入要打印的层数:")) for x in range(1, layer + 1): # 先打印空格 space_num = ...
  • 打印空心菱形和实心菱形 python

    千次阅读 2018-11-29 22:32:47
    空心: 实心: (只要把每行中心号的起点到终点之间的空白也变成心号,空心就可以直接变成实心) 直接将注释行变为上面一行,即 将两个点变为一个范围 ...

空空如也

空空如也

1 2 3 4 5 ... 16
收藏数 311
精华内容 124
关键字:

python打印空心菱形