编程实现计算欧拉函数值的算法,并用C语言实现
时间: 2023-05-17 15:07:28 浏览: 418
欧拉函数是指小于等于n的正整数中与n互质的数的个数,可以用以下公式计算:
φ(n) = n * (1 - 1/p1) * (1 - 1/p2) * ... * (1 - 1/pk)
其中p1,p2,...,pk是n的所有质因数。
以下是用C语言实现计算欧拉函数值的算法:
```c
#include <stdio.h>
int phi(int n) {
int result = 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;
printf("请输入一个正整数n:");
scanf("%d", &n);
printf("phi(%d) = %d\n", n, phi(n));
return 0;
}
```
输入一个正整数n,程序会输出phi(n)的值。
阅读全文