写一个程序来检测一个整数是不是丑数。
丑数的定义是,只包含质因子 2, 3, 5 的正整数。比如 6, 8 就是丑数,但是 14 不是丑数以为他包含了质因子 7。
样例
给出 num = 8,返回 true。
给出 num = 14,返回 false。
分析:如果一个数能连续被2整除,或连续被3整除,或连续被5整除,最后的数为1 即为丑数
class Solution {
public:
/**
* @param num an integer
* @return true if num is an ugly number or false
*/
bool isUgly(int num) {
// Write your code here
if(num<=0)
return false;
else
{
while(num%2==0)
num/=2;
while(num%3==0)
num/=3;
while(num%5==0)
num/=5;
return (num==1)?true:false;
}
}
};