3
1
0

欧拉函数

2026-01-04
2026-08-13
欧拉函数
文章摘要
|
#include<iostream>
long long euler(long long n) {
	
	if (n == 0||n == 1) {
		return 0;
	}
	else
	{
		long long res = n;
		for (int i = 2; i * i <= n; i++) {
			if (n % i == 0) {
				res = res * (i - 1) / i;
				while (n % i == 0) {
					n = n / i;
				}
			}
		}
		if (n > 1) {
			res = res / n * (n - 1);
		}
		return res;
	}
	
}
int main() {
	long long n;
	std::cout << "请输入一个整数" << std::endl;
	std::cin >> n;
	std::cout << "小于"<<n<<",且与"<<n<<"互质的数有" << euler(n) << "个" << std::endl;
	return 0;
}

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或者给予支持!

评论