1 2 static assert(2.0 * 3.0 == 6 ); 3 static assert(2.0 * 3.0i == 6i); 4 static assert(2.0i * 3.0 == 6i); 5 static assert(2.0i * 3.0i == -6 ); 6 7 static assert(2.0 * (4.0 + 3.0i) == 8 + 6i); 8 static assert(2.0i * (4.0 + 3.0i) == 8i - 6 ); 9 static assert((4.0 + 3.0i) * 2.0 == 8 + 6i); 10 static assert((4.0 + 3.0i) * 2.0i == 8i - 6 ); 11 static assert((4.0 + 3.0i) * (5 + 7i) == -1 + 43i ); 12 13 static assert((2.0).re == 2); 14 static assert((2.0i).re == 0); 15 static assert((3+2.0i).re == 3); 16 17 static assert((4.0i).im == 4); 18 static assert((2.0i).im == 2); 19 static assert((3+2.0i).im == 2); 20 21 static assert(6.0 / 2.0 == 3); 22 static assert(6i / 2i == 3); 23 static assert(6 / 2i == -3i); 24 static assert(6i / 2 == 3i); 25 26 static assert((6 + 4i) / 2 == 3 + 2i); 27 static assert((6 + 4i) / 2i == -3i + 2); 28 29 //static assert(2 / (6 + 4i) == -3i); 30 //static assert(2i / (6 + 4i) == 3i); 31 //static assert((1 + 2i) / (6 + 4i) == 3i); 32 33 static assert(6.0 % 2.0 == 0); 34 static assert(6.0 % 3.0 == 0); 35 static assert(6.0 % 4.0 == 2); 36 37 static assert(6.0i % 2.0i == 0); 38 static assert(6.0i % 3.0i == 0); 39 static assert(6.0i % 4.0i == 2i); 40 41 42