Python每日一练-DAY01

Question 1

题目

让用户输入一个整数n,打印输出n以内的全部大于0的偶数(不包含n)

解题思路一

首先,我们使用input()函数获取用户输入的整数n,并使用int()函数将其转换为整数类型。然后,我们初始化一个变量num为n。

接下来,我们使用while循环开始从n开始向下遍历每一个整数。在每次迭代中,我们首先检查num是否为偶数(即num % 2 == 0),同时还需要确保num不等于输入的整数n(即num != input_num)。
如果这两个条件都满足,我们就打印出num

最后,我们将num减1,然后继续下一次迭代。当num小于或等于0时,while循环结束。

代码实现

# 使用input函数获取用户输入的字符串,并使用int函数将其转换为整数,然后赋值给变量num
num = int(input("请输入一个整数:"))

# 将用户输入的整数存储在另一个变量input_num中,以便后续比较
input_num = num

# 使用while循环,只要num大于0,就继续执行循环体内的代码
while num > 0:
    # 使用if语句检查num是否是偶数(即num除以2的余数是否为0),并且num不等于用户最初输入的整数
    if num % 2 == 0 and num != input_num:
        # 如果上述条件都满足,则打印num
        print(num)
    # 每次循环结束后,将num减1
    num -= 1

解题思路二

首先,我们使用input()函数获取用户输入的整数n,并使用int()函数将其转换为整数类型。

然后,我们使用range()函数创建一个从2开始,步长为2,到n结束(不包括n)的整数序列。这样就可以直接得到所有的偶数。

最后,我们使用for循环遍历这个整数序列,并打印出每个元素。

# 使用input函数获取用户输入的字符串,并使用int函数将其转换为整数,然后赋值给变量userInput
userInput = int(input("请输入一个整数:"))

# 使用for循环和range函数生成一个从2开始,到userInput结束(不包含userInput),步长为2的序列
# 这样可以保证生成的所有数字都是偶数
for num in range(2, userInput, 2):
    # 在每次循环中,打印当前的num
    print(num)
本作品采用《CC 协议》,转载必须注明作者和本文链接
鹅不糊涂
讨论数量: 2
Jason990420

Here's my code

while True:

    string = input("请输入一个正整数:")
    try:
        n = int(string)
        if n > 0:
            break
    except ValueError:
        pass

    print(">>> 输入错误")

print('>>> '+' '.join(str(i) for i in range(2, n, 2)))
请输入一个正整数:a
>>> 输入错误
请输入一个正整数:-3
>>> 输入错误
请输入一个正整数:0
>>> 输入错误
请输入一个正整数:1.5
>>> 输入错误
请输入一个正整数:12
>>> 2 4 6 8 10
6个月前 评论
Max_SiChuan (楼主) 6个月前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!