Program to calculate Euler's Totient Function.
Todas as verificações foram bem sucedidas
The build was successful.
Todas as verificações foram bem sucedidas
The build was successful.
Esse commit está contido em:
29
tests/eulers_totient.aer
Arquivo normal
29
tests/eulers_totient.aer
Arquivo normal
@@ -0,0 +1,29 @@
|
|||||||
|
// A simple C program to calculate Euler's Totient Function
|
||||||
|
class Program {
|
||||||
|
|
||||||
|
// Function to return gcd of a and b
|
||||||
|
private int gcd(int $a, int $b) {
|
||||||
|
if($a == 0)
|
||||||
|
return $b;
|
||||||
|
return $this->gcd($b % $a, $a);
|
||||||
|
}
|
||||||
|
|
||||||
|
// A simple method to evaluate Euler Totient Function
|
||||||
|
private int phi(int $n) {
|
||||||
|
int $result = 1;
|
||||||
|
for(int $i = 2; $i < $n; $i++)
|
||||||
|
if($this->gcd($i, $n) == 1)
|
||||||
|
$result++;
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Driver program to test above function
|
||||||
|
public int main() {
|
||||||
|
int $n;
|
||||||
|
for($n = 1; $n <= 10; $n++)
|
||||||
|
printf("phi(%d) = %d\n", $n, $this->phi($n));
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
10
tests/eulers_totient.exp
Arquivo normal
10
tests/eulers_totient.exp
Arquivo normal
@@ -0,0 +1,10 @@
|
|||||||
|
phi(1) = 1
|
||||||
|
phi(2) = 1
|
||||||
|
phi(3) = 2
|
||||||
|
phi(4) = 2
|
||||||
|
phi(5) = 4
|
||||||
|
phi(6) = 2
|
||||||
|
phi(7) = 6
|
||||||
|
phi(8) = 4
|
||||||
|
phi(9) = 6
|
||||||
|
phi(10) = 4
|
||||||
Referência em uma Nova Issue
Bloquear um usuário