Changeset 95b8aa7 for tests/rational.cfa
- Timestamp:
- Jan 11, 2019, 3:36:48 PM (7 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, no_list, persistent-indexer, pthread-emulation, qualifiedEnum
- Children:
- e1f7eef
- Parents:
- ff5caaf (diff), 52ffa30 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
tests/rational.cfa
rff5caaf r95b8aa7 5 5 // file "LICENCE" distributed with Cforall. 6 6 // 7 // rational.c -- test rational number package7 // rational.cfa -- test rational number package 8 8 // 9 9 // Author : Peter A. Buhr 10 10 // Created On : Mon Mar 28 08:43:12 2016 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Oct 10 23:25:04 201713 // Update Count : 6 712 // Last Modified On : Tue Dec 4 21:46:42 2018 13 // Update Count : 69 14 14 // 15 15 … … 27 27 28 28 int main() { 29 sout | "constructor" | endl;29 sout | "constructor"; 30 30 Rational(int) a = { 3 }, b = { 4 }, c; 31 sout | a | b | c | endl;31 sout | a | b | c; 32 32 33 33 a = (Rational(int)){ 4, 8 }; 34 34 b = (Rational(int)){ 5, 7 }; 35 sout | a | b | endl;35 sout | a | b; 36 36 a = (Rational(int)){ -2, -3 }; 37 37 b = (Rational(int)){ 3, -2 }; 38 sout | a | b | endl;38 sout | a | b; 39 39 a = (Rational(int)){ -2, 3 }; 40 40 b = (Rational(int)){ 3, 2 }; 41 sout | a | b | endl;41 sout | a | b; 42 42 43 sout | "logical" | endl;43 sout | "logical"; 44 44 a = (Rational(int)){ -2 }; 45 45 b = (Rational(int)){ -3, 2 }; 46 sout | a | b | endl;47 // sout | a == 1 | endl; // FIX ME48 sout | a != b | endl;49 sout | a < b | endl;50 sout | a <= b | endl;51 sout | a > b | endl;52 sout | a >= b | endl;46 sout | a | b; 47 // sout | a == 1; // FIX ME 48 sout | a != b; 49 sout | a < b; 50 sout | a <= b; 51 sout | a > b; 52 sout | a >= b; 53 53 54 sout | "arithmetic" | endl;55 sout | a | b | endl;56 sout | a + b | endl;57 sout | a - b | endl;58 sout | a * b | endl;59 sout | a / b | endl;54 sout | "arithmetic"; 55 sout | a | b; 56 sout | a + b; 57 sout | a - b; 58 sout | a * b; 59 sout | a / b; 60 60 61 sout | "conversion" | endl;61 sout | "conversion"; 62 62 a = (Rational(int)){ 3, 4 }; 63 sout | widen( a ) | endl;63 sout | widen( a ); 64 64 a = (Rational(int)){ 1, 7 }; 65 sout | widen( a ) | endl;65 sout | widen( a ); 66 66 a = (Rational(int)){ 355, 113 }; 67 sout | widen( a ) | endl;68 sout | narrow( 0.75, 4 ) | endl;69 sout | narrow( 0.14285714285714, 16 ) | endl;70 sout | narrow( 3.14159265358979, 256 ) | endl;67 sout | widen( a ); 68 sout | narrow( 0.75, 4 ); 69 sout | narrow( 0.14285714285714, 16 ); 70 sout | narrow( 3.14159265358979, 256 ); 71 71 72 sout | "decompose" | endl;72 sout | "decompose"; 73 73 int n, d; 74 74 // [n, d] = a; 75 // sout | a | n | d | endl;75 // sout | a | n | d; 76 76 77 sout | "more tests" | endl;77 sout | "more tests"; 78 78 Rational(int) x = { 1, 2 }, y = { 2 }; 79 sout | x - y | endl;80 sout | x > y | endl;81 sout | x | numerator( x, 2 ) | x | endl;82 sout | y | denominator( y, -2 ) | y | endl;79 sout | x - y; 80 sout | x > y; 81 sout | x | numerator( x, 2 ) | x; 82 sout | y | denominator( y, -2 ) | y; 83 83 84 84 Rational(int) z = { 0, 5 }; 85 sout | z | endl;85 sout | z; 86 86 87 sout | x | numerator( x, 0 ) | x | endl;87 sout | x | numerator( x, 0 ) | x; 88 88 89 89 x = (Rational(int)){ 1, MAX } + (Rational(int)){ 1, MAX }; 90 sout | x | endl;90 sout | x; 91 91 x = (Rational(int)){ 3, MAX } + (Rational(int)){ 2, MAX }; 92 sout | x | endl;92 sout | x; 93 93 94 94 sin | a | b; 95 sout | a | b | endl;95 sout | a | b; 96 96 } // main 97 97 98 98 // Local Variables: // 99 99 // tab-width: 4 // 100 // compile-command: "cfa rational.c " //100 // compile-command: "cfa rational.cfa" // 101 101 // End: //
Note:
See TracChangeset
for help on using the changeset viewer.