如何编写一个程序,要求用户输入 0 到 1000 之间的数字,包括 ....继续

How to write a program that asks the user to enter a number between 0 and 1000, inclusive....continued

问题:编写一个程序,要求用户输入一个介于 0 和 1000 之间的数字,包括端点(即包括端点 0 和 1000)。如果他们输入的数字超出范围,则打印一条消息说明该数字超出范围,并再次提示他们输入 0 到 1000 之间的数字,包括 0 和 1000。当用户输入范围内的数字时,将数字打印到屏幕并结束程序。

我已经编写了程序,但我确定我正确使用了while语句。请检查我的程序并提供反馈。 我的问题:如果我两次输入一个负数,它不是第三次要求一个数字。请帮忙!!

这是我的程序:

from turtle import*
def ask():
    m = eval(input("Enter a number between 0 and 1000, inclusive: "))
    return m

def inclusive(i):
    i = -1
    while i < 0 or i > 1000:
        print("Out of range, my boy. Try again!")
        i = ask()

    return i


def main():
    n = ask()
    m = inclusive(m)  
    win = Screen()
    win.bgcolor("black")
    ahamed = Turtle()
    ahamed.pencolor("blue")
    ahamed.write(m,font=["Arial",90])
    ahamed.hideturtle()

    exitonclick()

main()

我的问题:如果我输入两次负数,它不是第三次询问数字。请帮忙!!

您应该将 while 条件更改为如下:

def ask():
    return int(input("Enter a number between 0 and 1000, inclusive: "))

def inclusive():
    i = -1
    while i < 0 or i > 1000:
        print("Out of range, my boy. Try again!")
        i = ask()
    return i

def main():
    m = inclusive()
    print(m)