要计算与 N 互质且小于 N 的整数的数量,我们可以简单地计算其ETF。然而,要计算与 N 互质但小于 M 的整数数量,其中 M < N ,我们如何修改/计算它?我已尝试计算 ETF 的代码,但无法继续如何修改它以获得所需的结果。
代码:
int etf(int n)
{
int result = n;
int i;
for(i=2;i*i <= n;i++)
{
if (n % i == 0) result -= result / i;
while (n % i == 0) n /= i;
}
if (n > 1) result -= result / n;
return result;
}
Run Code Online (Sandbox Code Playgroud)
谢谢