描述
输入一个小于 10001000 的自然数,输出小于该自然数且数字中含有 “33” 的所有数。
要求:不分行、连续显示,相邻两数间隔 22 个空格,具体显示格式参见样例。
输入
2 \sim 10002∼1000 之间的自然数
输出
小于输入数且数字中含有 “33” 的所有数
思路:首先,本题需要输出的最大位数就是三位数,使得解决本题就更加简单了,本题我们可以使用for'循环遍历所有数,而对于怎么判断数字里是否有3,我们可以把其各个位置上的数表示出来 :如下代码段,a,b,c分别代表百十个位上的数
a=n//100
b=n//10%10
c=n%10
接下来我们判断a,b,c中是否有含3的就可以了。
最终步骤如下代码段所示
n=int(input())
a=n//100
b=n//10%10
c=n%10
for i in range(2,n+1):
a=i//100
b=i//10%10
c=i%10
if i<n:
if a==3 or b==3 or c==3:
print(i,end=" ")