Определение гиперпростых чисел в C
Привет! Меня зовут Александр и сегодня я поделюсь с вами логической функцией на языке C , которая позволяет определить, является ли число гиперпростым или нет. Для этого мы будем использовать уже готовую функцию isPrime, которая проверяет, является ли число простым.
Для начала, нам потребуется подключить необходимые заголовочные файлы⁚
c
#include
#include
using namespace std;
Затем, объявим функцию isHyperPrime, которая будет принимать один аргумент ⸺ число, которое мы будем проверять.
c
bool isHyperPrime(int number) {
}
Внутри функции определим переменную digits, которая будет представлять собой все возможные подстроки числа, начинающиеся с первой цифры.
c Теперь, выполним проверку каждой подстроки числа на простоту, используя функцию isPrime⁚ c for (int i 0; i < numStr.length; i ) {
digits.push_back(numStr.substr(0, i 1));
}
for (int i 0; i < digits.size; i ) {
int subNum stoi(digits[i]);
if (!isPrime(subNum)) {
return false;
}
}
return true;
}
Наконец, чтобы протестировать нашу функцию, добавим код для ввода числа с клавиатуры и вызова функции isHyperPrime⁚ c if (isHyperPrime(number)) { Теперь можно запустить программу и проверить различные числа на гиперпростоту. Например, если ввести число 733, программа выведет ″Число 733 гиперпростое″. А если ввести число 19, программа выведет ″Число 19 не гиперпростое″. Надеюсь, эта статья была полезной! Теперь вы можете легко определять гиперпростые числа с помощью нашей функции на языке C .
bool isHyperPrime(int number) {
string numStr to_string(number);
vector
for (int i 0; i < numStr.length; i ) {
digits.push_back(numStr.substr(0, i 1));
}
}
bool isHyperPrime(int number) {
string numStr to_string(number);
vector
int main {
int number;
cout << ″Введите натуральное число⁚ ″;
cin >> number;
cout << ″Число ″ << number << ″ гиперпростое.″ << endl;
} else {
cout << ″Число ″ << number << ″ не гиперпростое.″ << endl;
}
return 0;
}