丑数 就是只包含质因数 2、3 和/或 5 的正整数。1默认是第一个丑数。
输入n,判断是否是丑数。
直接上代码:
bool isugly(int n)
{
bool ok = true;
while (ok == true)
{
if (n % 2 == 0)//分别判断是否是2,3,5的倍数
{
n = n / 2;//且每次判断后都除去该数,看最终结果是不是1,若是这三个数的倍数,最终结果就是1,反之就不是
continue;
}
if (n % 3 == 0)
{
n = n / 3;
continue;
}
if (n % 5 == 0)
{
n = n / 5;
continue;
}
ok = false;
}
if (n == 1)
{
return true;
}
else return false;
}