|
1 | 1 | ! SPDX-Identifier: MIT
|
2 | 2 |
|
3 | 3 | program test_stdlib_math
|
4 |
| - use stdlib_math, only: clip |
| 4 | + use stdlib_math, only: clip, gcd |
5 | 5 | use stdlib_error, only: check
|
6 | 6 | use stdlib_kinds, only: int8, int16, int32, int64, sp, dp, qp
|
7 | 7 | implicit none
|
@@ -95,4 +95,23 @@ program test_stdlib_math
|
95 | 95 | call check(clip(-55891546.2_qp, -689712245.23_qp, -8958133457.23_qp) == -689712245.23_qp, &
|
96 | 96 | 'clip_qp failed for invalid case', warn=.true.)
|
97 | 97 |
|
| 98 | + |
| 99 | + ! gcd function |
| 100 | + ! testing format: check(gcd(a, b) == correct answer) |
| 101 | + call check(gcd(0, 0) == 0, 'gcd(0, 0) failed.', warn=.true.) |
| 102 | + call check(gcd(2, 0) == 2, 'gcd(2, 0) failed.', warn=.true.) |
| 103 | + call check(gcd(0, -2) == 2, 'gcd(0, -2) failed.', warn=.true.) |
| 104 | + call check(gcd(3, 3) == 3, 'gcd(3, 3) failed.', warn=.true.) |
| 105 | + call check(gcd(9, 6) == 3, 'gcd(9, 6) failed.', warn=.true.) |
| 106 | + call check(gcd(6, 9) == 3, 'gcd(6, 9) failed.', warn=.true.) |
| 107 | + call check(gcd(-9, 6) == 3, 'gcd(-9, 6) failed.', warn=.true.) |
| 108 | + call check(gcd(9, -6) == 3, 'gcd(9, -6) failed.', warn=.true.) |
| 109 | + call check(gcd(-9, -6) == 3, 'gcd(-9, -6) failed.', warn=.true.) |
| 110 | + call check(gcd(97, 91) == 1, 'gcd(97, 91) failed.', warn=.true.) |
| 111 | + |
| 112 | + call check(gcd(48_int8, 18_int8) == 6_int8, 'gcd(48, 18) failed for int8.', warn=.true.) |
| 113 | + call check(gcd(48_int16, 18_int16) == 6_int16, 'gcd(48, 18) failed for int16', warn=.true.) |
| 114 | + call check(gcd(48_int32, 18_int32) == 6_int32, 'gcd(48, 18) failed for int32', warn=.true.) |
| 115 | + call check(gcd(48_int64, 18_int64) == 6_int64, 'gcd(48, 18) failed for int64', warn=.true.) |
| 116 | + |
98 | 117 | end program test_stdlib_math
|
0 commit comments