鱼C论坛

 找回密码
 立即注册
查看: 2669|回复: 5

[已解决]如何按输入的正整数n输出*围成的倒三角形

[复制链接]
累计签到:135 天
连续签到:1 天
[LV.7]常住居民III
发表于 2019-10-18 16:19:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
按照用户输入的正整数n,输出*号构成的倒三角形。三角形高为n,第一行有n个*,之后每一行只有边界处有*。最后一行只有一个*。当输入n为1时,输出只有一个*。
就是这样的,比如输入8,就输出。希望大佬可以顺带1解释一下每行代码的意思,刚开始才学python
********
*     *
*    *
*   *
*  *
* *
**
*
最佳答案
2019-10-18 19:14:02
# -*- coding: utf-8 -*-
def triangle(n):
    for i in range(n, 0, -1):
        if i == n:
            print("*" * n)
        elif i == 1:
            print("*")
        else:
            print("*" + (i - 2) * " " + "*")


if __name__ == '__main__':
    num = int(input("请输入正整数:"))
    triangle(num)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

累计签到:298 天
连续签到:3 天
[LV.8]以坛为家I
发表于 2019-10-18 19:14:02 | 显示全部楼层    本楼为最佳答案   
# -*- coding: utf-8 -*-
def triangle(n):
    for i in range(n, 0, -1):
        if i == n:
            print("*" * n)
        elif i == 1:
            print("*")
        else:
            print("*" + (i - 2) * " " + "*")


if __name__ == '__main__':
    num = int(input("请输入正整数:"))
    triangle(num)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

累计签到:91 天
连续签到:1 天
[LV.6]常住居民II
发表于 2019-10-19 00:56:42 | 显示全部楼层
代码:
def creat_triangle(n:'int > 1'):#定义函数时我限定了n的取值范围
    print('*'*n)#打印第一行n个*
    n -= 3#这行之后,n就变成了两个*之间空格的数量
    while n+1:
        print('*'+' '*n +'*')#打印只有两个*的每一行
        n -= 1
    else:
        print('*')#打印最后一行
if __name__ == '__main__':
    num = int(input("请输入正整数:"))
    creat_triangle(num)
运行效果:

代码效果图

代码效果图

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

累计签到:135 天
连续签到:1 天
[LV.7]常住居民III
 楼主| 发表于 2019-10-19 11:41:38 | 显示全部楼层
本帖最后由 zmLau0727 于 2019-10-19 11:47 编辑

看懂了谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

累计签到:298 天
连续签到:3 天
[LV.8]以坛为家I
发表于 2019-10-19 11:47:53 | 显示全部楼层
zmLau0727 发表于 2019-10-19 11:41
这个最后一行的else那行代码啥意思啊

如果 i 不是 n 或者 1,就两端打印两个 *,中间隔着 (i - 2) 个空格。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-6-20 00:13

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表