一个不含0的数,如果它能被它的每一位除尽,则它是一个自除数。例如,128是个自除数,因为128 能被1、2、8整除。编写函数is_self_Divisor(num),判断 num 是否为自除数。

题目写不下了,补充下:

一个不含0的数,如果它能被它的每一位除尽,则它是一个自除数。例如,128是个自除数,因为128 能被1、2、8整除。编写函数is_self_Divisor(num),判断 num 是否为自除数。要求用户输人一个数n,调用自定义函数,实现输出不大于n的所有自除数,(注意,含有数字0的数不是自除数)。

num = int(input("请输入一个不含0的数字"))
is_chued = []
def is_self_Divisor(num):
    for i in range(0,num):
            if i > 100:
                if ((i // 100) != 0) and ((i // 10 % 10)) != 0 and ((i % 10) != 0):
                    if ((i  % (i // 100) == 0) and (i % (i // 10 % 10)==0)  and (i%(i % 10 ) ==0)):
                         is_chued.append(i)
            elif i > 10:
                if ((i // 10 % 10)) != 0 and ((i % 10) != 0):
                    if (i % (i // 10 % 10))==0  and (i % ( i % 10 )) ==0:
                        is_chued.append(i)
            elif i > 0:
               if  ((i % 10) != 0):
                    if  (i % (i % 10)) == 0:
                        is_chued.append(i)
is_self_Divisor(num)
print(is_chued)

不太确定这样做是否完全正确,在1000以内应该是可以找到想要的数字的。如果有好的方法可以分享下,欢迎交流

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值