在这里,我们将看到如何检查数字是否为全质数。如果数字是质数,则它被认为是全质数,并且所有数字也都是质数。假设数字是37,这是全质数。但是97不是全质数,因为9不是质数。
一种有效的方法是:首先,我们必须检查是否存在任何不是素数的数字。数字必须在0到9之间。在该范围内,2、3、5和7是质数,其他则不是质数。如果全部都是素数,请检查数字是否为素数。
#include <iostream> using namespace std; bool isPrime(int n){ for(int i = 2; i<= n/2; i++){ if(n % i == 0){ return false; } } return true; } bool isDigitPrime(int n) { int temp = n, digit; while(temp){ digit = temp % 10; if(digit != 2 && digit != 3 && digit != 5 && digit != 7){ return false; } temp = temp / 10; } return true; } bool isFullPrime(int n){ return (isDigitPrime(n) && isPrime(n)); } int main() { int num = 37; if(isFullPrime(num)){ cout << "The number is Full Prime"; } else { cout << "The number is not Full Prime"; } }
输出结果
The number is Full Prime