diff --git a/tests/int2alpha_test.aer b/tests/int2alpha_test.aer new file mode 100644 index 0000000..7f4a467 --- /dev/null +++ b/tests/int2alpha_test.aer @@ -0,0 +1,26 @@ +class Program { + + string num2alpha(int $n) { + string $r = ''; + for(int $i = 1; $n >= 0 && $i < 10; $i++) { + $r = chr(0x41 + ($n % pow(26, $i) / pow(26, $i - 1))) + $r; + $n -= pow(26, $i); + } + return $r; + } + + int alpha2num(string $a) { + int $r = 0; + int $l = strlen($a); + for(int $i = 0; $i < $l; $i++) { + $r += pow(26, $i) * (ord($a[$l - $i - 1]) - 0x40); + } + return (int) $r - 1; + } + + void main() { + import('math'); + var_dump($this->alpha2num("Salut"), $this->num2alpha(1723), $this->num2alpha(9854), $this->alpha2num("Base64")); + } + +} diff --git a/tests/int2alpha_test.exp b/tests/int2alpha_test.exp new file mode 100644 index 0000000..882e706 --- /dev/null +++ b/tests/int2alpha_test.exp @@ -0,0 +1,4 @@ +int(9293725) +string(3 'BNH') +string(3 'NOA') +int(39764075)