鱼C论坛

 找回密码
 立即注册
查看: 2447|回复: 9

[已解决]代码不同,但是运行结果一样

[复制链接]
发表于 2022-9-23 18:31:37 | 显示全部楼层 |阅读模式

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

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

x
答案代码:temp = input('请输入一个整数:')
number = int(temp)
while number:
    i = number - 1
    while i:
        print(' ', end = '')
        i = i - 1
    j = number
    while j:
        print('*', end = '')
        j = j - 1
    print()
    number = number - 1


自己敲的代码:temp = input("请输入一个整数:")
number = int(temp)
i = 1*('*')
while number:
    print(i*number)
    number = number - 1

想问一下自己写的代码是OK的吗?有没有哪些地方是不严谨的?
最佳答案
2022-9-23 18:47:12


甲鱼哥的代码是斜着打印的,你的是直立的

应该在 print 前面加上打印空字符串,参考代码:

  1. temp = input("请输入一个整数:")
  2. number = int(temp)
  3. while number:
  4.     print(" " * number + "*" * number)
  5.     number = number - 1
复制代码



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

使用道具 举报

发表于 2022-9-23 18:37:29 From FishC Mobile | 显示全部楼层
i = 1*('*')这句代码有啥用
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-9-23 18:42:42 | 显示全部楼层
wp231957 发表于 2022-9-23 18:37
i = 1*('*')这句代码有啥用

要打印*呀,但是直接让i=*的话,运行不了。我就把*当成字符串处理了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-23 18:43:58 From FishC Mobile | 显示全部楼层
一边玩一边学习 发表于 2022-9-23 18:42
要打印*呀,但是直接让i=*的话,运行不了。我就把*当成字符串处理了

print("*"*10)试一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-23 18:45:41 | 显示全部楼层
一边玩一边学习 发表于 2022-9-23 18:42
要打印*呀,但是直接让i=*的话,运行不了。我就把*当成字符串处理了



i = 1 * "*" 的结果等于 直接 "*"

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

使用道具 举报

 楼主| 发表于 2022-9-23 18:46:43 | 显示全部楼层
wp231957 发表于 2022-9-23 18:43
print("*"*10)试一下

这样也可以!但是我想问的是这个代码有没有不严谨的地方呢?而且我有点看不懂答案的代码方便解释一下吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-23 18:47:12 | 显示全部楼层    本楼为最佳答案   


甲鱼哥的代码是斜着打印的,你的是直立的

应该在 print 前面加上打印空字符串,参考代码:

  1. temp = input("请输入一个整数:")
  2. number = int(temp)
  3. while number:
  4.     print(" " * number + "*" * number)
  5.     number = number - 1
复制代码



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

使用道具 举报

发表于 2022-9-23 18:49:48 | 显示全部楼层
本帖最后由 jackz007 于 2022-9-23 18:51 编辑

标准答案:
  1. 请输入一个整数:8
  2.        ********
  3.       *******
  4.      ******
  5.     *****
  6.    ****
  7.   ***
  8. **
  9. *
复制代码

       你的代码
  1. 请输入一个整数:8
  2. ********
  3. *******
  4. ******
  5. *****
  6. ****
  7. ***
  8. **
  9. *
复制代码

        简化代码:
  1. number = int(input("请输入一个整数:"))
  2. for i in range(number , 0 , -1):
  3.     print(' ' * (i - 1) + '*' * i)
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-9-23 18:50:53 | 显示全部楼层
Twilight6 发表于 2022-9-23 18:47
甲鱼哥的代码是斜着打印的,你的是直立的

应该在 print 前面加上打印空字符串,参考代码:

这个的运行结果是一样的耶!但是看起来比答案简单很多!这样子写也可以对不对?是不是只要运行结果一样就可以了?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-23 18:55:41 | 显示全部楼层
一边玩一边学习 发表于 2022-9-23 18:50
这个的运行结果是一样的耶!但是看起来比答案简单很多!这样子写也可以对不对?是不是只要运行结果一样就 ...



是的~

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-20 01:31

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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