用C++代码实现求欧拉函数
时间: 2024-04-16 11:28:00 浏览: 95
当然可以!下面是一个使用C++实现求欧拉函数的示例代码:
```cpp
#include <iostream>
// 计算欧拉函数的函数
int eulerFunction(int n) {
int result = n; // 初始化结果为n
// 计算质因数的幂次
for (int i = 2; i * i <= n; ++i) {
if (n % i == 0) {
while (n % i == 0) {
n /= i;
}
result -= result / i; // 减去质因数的幂次
}
}
// 处理剩余的质因数
if (n > 1) {
result -= result / n;
}
return result;
}
int main() {
int n;
std::cout << "请输入一个正整数:";
std::cin >> n;
int euler = eulerFunction(n);
std::cout << "欧拉函数的值为:" << euler << std::endl;
return 0;
}
```
以上代码中,`eulerFunction` 函数接收一个正整数 `n`,并返回其欧拉函数的值。主函数中通过用户输入获取一个正整数,并调用 `eulerFunction` 函数计算并输出欧拉函数的值。
希望对你有帮助!如果还有其他问题,请随时提问。
阅读全文