条件语句python简介

2024-05-21 04:02:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在看一本介绍python的小册子,一直在想下面的问题。这个问题概述如下,我的尝试紧随其后。我的问题是,总数是固定的第一个数字输入,而问题是希望总数等于每一个新的数字输入。我希望这有道理。提前谢谢。你知道吗

编写一个接受一系列数字(以0结尾)的程序。如果当前数字与前一个数字相同,则表示Same'; if the current number is greater than the previous one, it saysUp',如果小于前一个数字,则表示'Down'。它对第一个数字完全没有反应。例如,列表9、9、8、5、10、10、0的输出将是相同的、向下的、向下的、向上的、相同的(依次比较9和9、9和8、8和5、5和10、10和10)。您可以假设输入中至少有两个数字。你知道吗

输入第一个数字:9

输入下一个数字(0完成):9

相同

输入下一个数字(0完成):8

向下

输入下一个数字(0完成):5

向下

输入下一个数字(0完成):10

向上

输入下一个数字(0完成):10

相同

输入下一个数字(0完成):0

---

我的尝试如下

print('please enter the first number: (0 to finish) ', end = '')
d = input()
total = int(d)
finished = False
while not finished:
    print('please enter the next number: (0 to finish) ', end = '')
    s = input()
    num = int(s)
    if num != 0:
        if num < total:
             print('down')
        elif num > total:
            print('Up') 
        elif num == total:
            print('Same') 
    else:
       finished = True

Tags: thetonumberif数字numendtotal
1条回答
网友
1楼 · 发布于 2024-05-21 04:02:43

您只需要将每个读取的数字的值指定为“previous”。你知道吗

print('please enter the first number: (0 to finish) ', end = '')
d = input()
total = int(d)
finished = False
while not finished:
    print('please enter the next number: (0 to finish) ', end = '')
    s = input()
    num = int(s)
    if num != 0:
        if num < total:
             print('down')
        elif num > total:
            print('Up') 
        elif num == total:
            print('Same') 
    else:
       finished = True
    total = num  # <    -!!!!!

相关问题 更多 >