“Modulare Potenz”
a)
public int calc(int x, int p, int m){
int y = 1;
while (p > 0){
while (p % 2 == 0){
x = (x * x) % m;
p /= 2;
}
y = (y * x) % m;
p--;
}
return y;
}
b)
x | p | m | y |
---|---|---|---|
3 | 6 | 13 | 1 |
3 | 6 | 13 | 3 |
9 | 3 | 13 | 3 |
9 | 2 | 13 | 1 |
3 | 1 | 13 | 1 |
3 | 0 | 13 | 3 |