This commit is contained in:
parent
ed8f3f341e
commit
8331d36869
29
tests/eulers_totient.aer
Normal file
29
tests/eulers_totient.aer
Normal file
|
@ -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
Normal file
10
tests/eulers_totient.exp
Normal file
|
@ -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
|
Loading…
Reference in New Issue
Block a user