gmp_remroot.phpt 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. --TEST--
  2. gmp_rootrem() basic tests
  3. --EXTENSIONS--
  4. gmp
  5. --FILE--
  6. <?php
  7. var_dump(gmp_rootrem(1000, 3));
  8. var_dump(gmp_rootrem(100, 3));
  9. var_dump(gmp_rootrem(-100, 3));
  10. var_dump(gmp_rootrem(1000, 4));
  11. var_dump(gmp_rootrem(100, 4));
  12. try {
  13. var_dump(gmp_rootrem(-100, 4));
  14. } catch (\ValueError $e) {
  15. echo $e->getMessage() . \PHP_EOL;
  16. }
  17. var_dump(gmp_rootrem(0, 3));
  18. try {
  19. var_dump(gmp_rootrem(100, 0));
  20. } catch (\ValueError $e) {
  21. echo $e->getMessage() . \PHP_EOL;
  22. }
  23. try {
  24. var_dump(gmp_rootrem(100, -3));
  25. } catch (\ValueError $e) {
  26. echo $e->getMessage() . \PHP_EOL;
  27. }
  28. ?>
  29. --EXPECTF--
  30. array(2) {
  31. [0]=>
  32. object(GMP)#%d (1) {
  33. ["num"]=>
  34. string(2) "10"
  35. }
  36. [1]=>
  37. object(GMP)#%d (1) {
  38. ["num"]=>
  39. string(1) "0"
  40. }
  41. }
  42. array(2) {
  43. [0]=>
  44. object(GMP)#%d (1) {
  45. ["num"]=>
  46. string(1) "4"
  47. }
  48. [1]=>
  49. object(GMP)#%d (1) {
  50. ["num"]=>
  51. string(2) "36"
  52. }
  53. }
  54. array(2) {
  55. [0]=>
  56. object(GMP)#%d (1) {
  57. ["num"]=>
  58. string(2) "-4"
  59. }
  60. [1]=>
  61. object(GMP)#%d (1) {
  62. ["num"]=>
  63. string(3) "-36"
  64. }
  65. }
  66. array(2) {
  67. [0]=>
  68. object(GMP)#%d (1) {
  69. ["num"]=>
  70. string(1) "5"
  71. }
  72. [1]=>
  73. object(GMP)#%d (1) {
  74. ["num"]=>
  75. string(3) "375"
  76. }
  77. }
  78. array(2) {
  79. [0]=>
  80. object(GMP)#%d (1) {
  81. ["num"]=>
  82. string(1) "3"
  83. }
  84. [1]=>
  85. object(GMP)#%d (1) {
  86. ["num"]=>
  87. string(2) "19"
  88. }
  89. }
  90. gmp_rootrem(): Argument #2 ($nth) must be odd if argument #1 ($a) is negative
  91. array(2) {
  92. [0]=>
  93. object(GMP)#%d (1) {
  94. ["num"]=>
  95. string(1) "0"
  96. }
  97. [1]=>
  98. object(GMP)#%d (1) {
  99. ["num"]=>
  100. string(1) "0"
  101. }
  102. }
  103. gmp_rootrem(): Argument #2 ($nth) must be greater than or equal to 1
  104. gmp_rootrem(): Argument #2 ($nth) must be greater than or equal to 1