lsmCC 发表于 2022-10-26 22:31:26

课后作业第十五讲最后一题

n = int(input("请输入一个正整数:"))
   
while n > 0:
    if n % 2 == 0:
      print(n, "/2 = ", n // 2, sep='')
      n = n // 2
    else:
      print(n, "*3+1 = ", n * 3 + 1, sep='')
      n = n * 3 + 1
    if n == 1:
      break
那个print(n, "/2 = ", n // 2, sep='')和print(n, "*3+1 = ", n * 3 + 1, sep='')是什么意思,看不懂

jackz007 发表于 2022-10-26 22:38:50

本帖最后由 jackz007 于 2022-10-26 22:45 编辑

print(n ,            # 输出变量 n 的值
      "/ 2 = " ,   # 输出字符串
      n // 2 ,       # 计算并输出表达式的值
      sep = '')      # 取消每个输出项之间的空格,因为,如果不写,这个参数的缺省值是 sep = ' '

print(n ,          # 输出变量 n 的值
      "*3+1 = " ,# 输出字符串
      n * 3 + 1 ,# 计算并输出表达式的值
      sep='')      # 取消每个输出项之间的空格,因为,如果不写,这个参数的缺省值是 sep = ' '
      print() 函数 sep = 选项参数的作用
>>> print(1,2,3,4)
1 2 3 4
>>> print(1,2,3,4,sep='')
1234
>>> print(1,2,3,4,sep=',')
1,2,3,4
>>>

lsmCC 发表于 2022-11-1 10:55:49

那个print打印的就是下面这个n=n//2,为什么还要写个n=n//2
页: [1]
查看完整版本: 课后作业第十五讲最后一题