Root Zanli
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
opt
/
golang
/
1.22.0
/
test
/
ken
/
Filename :
cplx1.go
back
Copy
// run // Copyright 2010 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. // Test simple arithmetic and assignment for complex numbers. package main const ( R = 5 I = 6i C1 = R + I // ADD(5,6) ) func main() { var b bool // constants b = (5 + 6i) == C1 if !b { println("const bool 1", b) panic("fail") } b = (5 + 6i) != C1 if b { println("const bool 2", b) panic("fail") } b = C1 == (5 + 6i) if !b { println("const bool 3", b) panic("fail") } b = C1 != (5 + 6i) if b { println("const bool 4", b) panic("fail") } // vars passed through parameters booltest(5+6i, true) booltest(5+7i, false) booltest(6+6i, false) booltest(6+9i, false) } func booltest(a complex64, r bool) { var b bool b = a == C1 if b != r { println("param bool 1", a, b, r) panic("fail") } b = a != C1 if b == r { println("param bool 2", a, b, r) panic("fail") } b = C1 == a if b != r { println("param bool 3", a, b, r) panic("fail") } b = C1 != a if b == r { println("param bool 4", a, b, r) panic("fail") } if r { if a != C1 { println("param bool 5", a, b, r) panic("fail") } if C1 != a { println("param bool 6", a, b, r) panic("fail") } } else { if a == C1 { println("param bool 6", a, b, r) panic("fail") } if C1 == a { println("param bool 7", a, b, r) panic("fail") } } }