С очень простым кодом:В GO, как преобразовать float в комплекс?
package main
import (
"fmt"
"math"
"math/cmplx"
)
func sqrt(x float64) string {
if x < 0 {
return fmt.Sprint(cmplx.Sqrt(complex128(x)))
}
return fmt.Sprint(math.Sqrt(x))
}
func main() {
fmt.Println(sqrt(2), sqrt(-4))
}
Я получаю следующее сообщение об ошибке:
main.go:11: cannot convert x (type float64) to type complex128
Я пробовал разные способы, но не смог выяснить, как преобразовать float64
к complex128
(только иметь возможность использовать функцию cmplx.Sqrt()
на отрицательном числе).
Каков правильный способ справиться с этим?
Thx, вы правы, именно это я и искал. –