题目:写一个程序来检测一个整数是不是丑数。
丑数的定义是,只包含质因子 2, 3, 5 的正整数。比如 6, 8 就是丑数,但是 14 不是丑数以为他包含了质因子 7。
思路:因子:都是质因子 ;先让数字去依次除2,3,5(每次的条件都是余数为0.当余数不为0,跳转到下一个循环),然后最后的商为1则代表它是丑数
class Solution:
# @param {int} num an integer
# @return {boolean} true if num is an ugly number or false
import math
def isUgly(self, num):
# Write your code here
if num<=0:
return False
if num==1:
return True
while num%2==0:
num=num/2
while num%3==0:
num=num/3
while num%5==0:
num=num/5
if num==1: #最后商为1,则为正确
return True
else:
return False