天津网站制作公司哪家好,wordpress文章多密码,产品市场营销策划书,外贸客户管理软件排名一.思路分析
先来看看素数的性质#xff1a;
素数又称质数#xff0c;是指除了1和本身外没有其它因数的自然数。素数有许多有趣的性质和应用#xff0c;例如可以用于加密算法和数学证明等。比如2、3、5、7等都是素数#xff0c;而4、6、8、9等则不是素数。素数的研究是数…一.思路分析
先来看看素数的性质
素数又称质数是指除了1和本身外没有其它因数的自然数。素数有许多有趣的性质和应用例如可以用于加密算法和数学证明等。比如2、3、5、7等都是素数而4、6、8、9等则不是素数。素数的研究是数论领域的重要课题之一也是现代密码学和计算机科学中的重要基础。
找素数最常见的有2种方法
暴力法
从2开始遍历到n结束如果其中的数存在能够整除n的就不是素数。 int main()
{int n 0;scanf(%d, n);for (int i 2; i n; i){if (n % i 0){printf(no\n);return;}}printf(yes\n);return 0;
}
2.我们在暴力法上再进行修改一下我们设两个整数a和b如果不是质数的话整数x就可以写成 xa * b 比如 362 * 18 363 * 12 364 * 9 366 * 6 如果整数x为质数那么就不可能写成 x a * b的形式。所以如果整数x无法被小于等于x的平方根的质数整除则x为质数。 因此我们可以在第四种方法上改造一下就是在第二层for循环从数组的第一个元素出发每一个都写成平方直到平方大于整数x退出循环。
int main()
{int n 0;scanf(%d, n);for (int i 2; i sqrt(n); i){if (n % i 0){printf(no\n);return;}}printf(yes\n);return 0;
}