跳至主要內容

While

AI悦创原创Python 一对一教学uicUIC Information SpacePython 一对一教学uicUIC Information Space大约 6 分钟...约 1886 字

  1. 编写一个程序,要求用户输入一个正整数,并使用 while 循环计算该数的阶乘。
  2. 编写一个程序,要求用户输入一个整数,使用 while 循环计算并输出该数的所有正因子。
  3. 编写一个程序,生成一个介于1和100之间的随机数,然后让用户不断尝试猜测这个数,直到猜对为止。使用 while 循环,并给出提示(猜大了或猜小了)。
  4. 编写一个程序,使用 while 循环计算并输出斐波那契数列的前20个数字。
  5. 编写一个程序,使用 while 循环计算并输出一个用户输入的正整数的二进制表示。
  6. 编写一个程序,使用 while 循环实现一个简单的计数器。要求用户输入开始值、结束值和步长,然后从开始值开始计数,每次增加步长,直到到达或超过结束值。
  7. 编写一个程序,要求用户输入一个整数,使用 while 循环计算并输出该数的所有素数因子。
  8. 编写一个程序,使用 while 循环计算并输出一个用户输入的整数的所有位数之和。例如,输入 12345,输出 15(1+2+3+4+5)。
  9. 编写一个程序,使用 while 循环实现一个简单的倒计时。要求用户输入一个正整数作为起始值,然后从该值开始倒计时,每秒减1,直到0。
  10. 编写一个程序,使用 while 循环模拟一个简单的石头、剪刀、布游戏。让用户与计算机进行对战,游戏会一直进行,直到用户输入“退出”。游戏过程中要记录并输出双方的胜负情况。
1
n = int(input("请输入一个正整数:"))
factorial = 1
i = 1
while i <= n:
    factorial *= i
    i += 1
print(f"{n}的阶乘为:{factorial}")

Question

k = 96
w = int(input("输入:"))
while not (w == k):  # not 96 == k False
    if w < k:
        print("猜小了")
        ww = int(input("重新输入"))
        w = ww
    elif w > k:
        print("猜大了")
        ww = int(input("重新输入"))
        w = ww
else:
    print("猜对了")

提示

为什么这个代码的 else 可以正常运行?不应该报错吗?

这个代码是正确的,不会报错。在这个代码中,else 语句是与 while 循环配对的,而不是与 if 语句配对的。这意味着,只有当 while 循环的条件为 False 时,else 语句才会执行。在这种情况下,这意味着当 w == k 时,else 语句会被执行,然后输出 "猜对了"。

当你在 while 循环中使用 else 语句时,它的作用类似于一个 "正常结束" 的标志。换句话说,如果 while 循环没有被 break 语句中断,而是因为条件不满足而自然结束,那么 else 语句会被执行。在这个例子中,我们没有使用 break 语句,所以 else 语句会在 w == k 时被执行。

公众号:AI悦创【二维码】

AI悦创·编程一对一

AI悦创·推出辅导班啦,包括「Python 语言辅导班、C++ 辅导班、java 辅导班、算法/数据结构辅导班、少儿编程、pygame 游戏开发、Web、Linux」,全部都是一对一教学:一对一辅导 + 一对一答疑 + 布置作业 + 项目实践等。当然,还有线下线上摄影课程、Photoshop、Premiere 一对一教学、QQ、微信在线,随时响应!微信:Jiabcdefh

C++ 信息奥赛题解,长期更新!长期招收一对一中小学信息奥赛集训,莆田、厦门地区有机会线下上门,其他地区线上。微信:Jiabcdefh

方法一:QQopen in new window

方法二:微信:Jiabcdefh

上次编辑于:
贡献者: AndersonHJB
你认为这篇文章怎么样?
  • 0
  • 0
  • 0
  • 0
  • 0
  • 0
评论
  • 按正序
  • 按倒序
  • 按热度