题目:
写一个程序来检测一个整数是不是丑数
。
丑数的定义是,只包含质因子 2, 3, 5
的正整数。比如 6, 8 就是丑数,但是 14 不是丑数以为他包含了质因子 7。
Code:
*求质因子有且只包含 2 3 5.反言之:该数,有且只能被 2 3 5 整除,即求模运算。继而进行整除进入下一循环。
*最终如果到最后值除尽恰好等于1,说明该数质因子只为2 3 5返回True.否则表示其还有其他质因子则返回False。
public class IsUgly
{
/**
* @param num an integer
* @return true if num is an ugly number or false
*/
public Boolean Is_Ugly(int num)
{
// Write your code here
var flag = false;
while (num % 2 == 0)
{
num = num / 2;
}
while (num % 3 == 0)
{
num = num / 3;
}
while (num % 5 == 0)
{
num = num / 5;
}
if (num == 1)
{
flag = true;
}
return flag;
}
}