如何判断一个多边形是不是凸多边形_写算法,判断一个数是不是丑数

写算法

判断一个数是不是丑数,

两类问题:

是,不是

丑数是什么特征?

满足:

1,n==1

2,n只能被2,3,5整除

fe67c9d25d9e0de02618a2bdaf22bd0f.png

如果n是丑数,那么如果n可以整除2,n除以2的数,一定也是丑数。

这就是递归。

这就是迭代。

他们有共同点。

所以是相通的

def choushu(n:int):#输入是一个整数
    while True:
        if n==1:
            return True
        if n>1:
            if (n%2==0):
                n=n/2
                continue
            if (n%3==0):
                n=n/3
                continue
            if (n%5==0):
                n=n/5
                continue
            else:
                return False

递归和迭代:

为什么可以转换?

迭代:

可以改变n

改变后的n,也是和之前的n,发生同样的逻辑(这就是和递归的连接点)

使得改变后的n趋近于初始值

递归:

def choushu_digui(n):
    if n==1:
        return True
    if n>1:
        if n%2==0:
            print("hi")
            return choushu_digui(n/2)
        if n%3==0:
            return choushu_digui(n/3)
        if n%5==0:
            return choushu_digui(n/5)
        else:
            return False
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值