Golang : Calculations using complex numbers example
Alright, you need to calculate the last known position of UFOs and their flying trajectory in Golang or you just want to perform some calculations using complex numbers.
Declaring complex numbers and performing calculations on the numbers is simple in Golang. Pretty much similar to how Python declare complex numbers.
In Python:
>>> a = complex(100,8)
>>> a
(100+8j)
>>> a.real
100.0
>>> a.imag
8.0
In Golang and some examples on how to perform calculations with math/cmplx
package:
package main
import (
"fmt"
"math/cmplx"
)
const a = complex(100, 8)
const b = complex(8, 100)
func main() {
fmt.Println("Complex number a : ", a)
fmt.Println("Complex number b : ", b)
fmt.Println("Get the real part of complex number a : ", real(a))
fmt.Println("Get the imaginary part of complex number b : ", imag(a))
conjugate := cmplx.Conj(a)
fmt.Println("Complex number a's conjugate : ", conjugate)
c := a + b
fmt.Println("a + b complex number : ", c)
fmt.Println("Cosine of complex number b : ", cmplx.Cos(b))
// see https://golang.org/pkg/math/cmplx/
// for more functions such as sine, log, exponential
}
Happy coding!
References:
https://en.wikipedia.org/wiki/Complex_number
https://golang.org/pkg/builtin/#complex
https://golang.org/pkg/math/cmplx/
https://www.socketloop.com/references/golang-builtin-complex-function-example
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+4.5k Swift : Convert string array to array example
+16.7k Golang : Convert IPv4 address to decimal number(base 10) or integer
+5.3k Golang : How to get capacity of a slice or array?
+22.7k Golang : Upload to S3 with official aws-sdk-go package
+30.1k Golang : Math pow(the power of x^y) example
+11k Golang : List running EC2 instances and descriptions
+9k Golang : Random Rune generator
+6.5k Golang : Detect sample rate, channels or latency with PortAudio
+7.9k Golang : Intercept and compare HTTP response code example
+14.3k Golang : invalid character ',' looking for beginning of value
+3.3k Golang : Converting individual Jawi alphabet to Rumi(Romanized) alphabet example
+46.2k Golang : How to convert JSON string to map and slice