python-箭形图案(赛氪OJ)

[题目描述]
小理学习了循环,老师给他出了一系列打印图案的练习,该任务是打印用“ ∗ ”组成的箭形图案。
输入格式:
一行一个整数 n。
输出格式:
针对输入的 n ,输出用“ ∗ ”组成的箭形。                                                                  
样例输入#1
3
样例输出#1
      *
    **
  ***
****
  ***
    **                                                                                    *
样例输入#2
4
样例输出#2
        *
      **                                                                                ***
  ****
*****
  ****
    ***
      **
        *
数据范围:
对于 100% 的数据,保证 2≤n≤20 。
来源/分类(难度系数:一星)


完整代码展示:
a=int(input())
b=1
c=2*a
space=" "
d="*"
while b<a+2:
       print("{}{}".format(space*c,d*b))
       c-=2
       b+=1
e=a
f=2
while e>0:
       print("{}{}".format(space*f,d*e))
       e-=1
       f+=2


代码解释:
a=int(input())
 b=1
 c=2*a
 space=" "
 d="*"         
     ”,让用户输入箭形图案的头宽a,设置循环密码子为b,并将其初始值设为1。空格键值为c,c==2*a,空格键为space,space=” ”。d为图案组成元素”*”。
while b<a+2:
         print("{}{}".format(space*c,d*b))
         c-=2
         b+=1         
                                      ”,当b<a+2时,打印c个空格键(space),b个d。每循环一次,就令c-=2(c减2),b+=1(b加1)。直至b==a+2,跳出整个while循环。(本次while循环用于绘制箭形图案中间及其上半部分。
e=a
 f=2
 while e>0:
        print("{}{}".format(space*f,d*e))
        e-=1
        f+=2                                               
”,空格键值为f,f初始值为2。设循环密码子为e,并将其初始值设为a。当e>0时,打印f个空格键(space),e个d。每循环一次,就令e-=1(e减1),f+=2(f加2),直至e==0,跳出整个while循环。(本次循环用于打印箭形图案的下半部分。


运行效果展示:

6047047c2310451da243c6038cf82ffa.jpg

b4ed4ad51c1944b299bc75ab276ef8ac.jpg 

             (声明:以上内容均为原创) 

  • 21
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

闪云-微星

感谢大家的支持与鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值