언어 자료구조 알고리즘/구글 Go

[구글 Go 하자] 9. Go 언어에서는 복소수를 표현하는 형식을 제공해요.

언제나휴일 2016. 5. 28. 07:17
반응형

9. Go 언어에서는 복소수를 표현하는 형식을 제공해요.



 안녕하세요. 언제나 휴일, 언휴예요.


 통계나 물리 엔진 등을 개발할 때 실수 뿐만 아니라 복소수를 계산할 때가 있어요. Go언어에서는 복소수를 표현할 수 있는 형식으로 complex64와 complex128을 제공하고 있어요.


 complex64 형식은 float32 실수부와 허수부로 구성하며 complex128 형식은 float64 실수부와 허수부로 구성하고 있어요. 프로젝트를 새로 생성하여 복소수를 표현해 보아요.

LiteIDE에 프로젝트 생성 및 소스 추가

[그림 1] LiteIDE에 프로젝트 생성 및 소스 추가



 Go언어에서 복소수 형식 변수에 값을 초기화할 때 실수부와 허수부, 허수부만 있을 때, 실수부만 있을 때 값을 표현할 수 있어요.

  • 복소수 형식 변수에 값을 초기화

    var c1 complex64 = 1 + 2i //실수부와 허수부

    var c2 complex64 = 3i     //허수부만 있을 때

    var c3 complex64 = 2.0    //실수부만 있을 때


 그리고 복소수에서 실수부를 추출할 때는 real 함수를 사용하고 허수부를 추출할 때는 imag 함수를 사용합니다.

  • 복소수에서 실수부와 허수부 추출

    var f1 = real(c1) //실수부 추출

    var f2 = imag(c1) //허수부 추출


 complex 함수를 이용하여 복소수를 합성할 수도 있어요. 

  • complex 함수로 복소수 합성

    var c4 = complex(f1, f2) //complex 함수로 복소수 합성

복소수 표현 예제 실행 화면

[그림 2] 복소수 표현 예제 실행 화면


관련 게시글

[구글 Go 하자] 5. 강력한 타입 언어, Go 언어 변수 선언 맛보기

[구글 Go 하자] 6. 표현 범위에 따라 원하는 정수 형식 사용

[구글 Go 하자] 7. byte와 rune 으로 바이너리 데이터 및 코드 표현

[구글 Go 하자] 8. IEEE 754 규약을 따르는 실수, 오차 범위에 주의

[구글 Go 하자] 10. math 패키지에서 제한값을 제공해요.

[구글 Go 하자] 11. 참과 거짓은 bool, 문자열은 string

[구글 Go 하자] 12. const 키워드로 상수 정의

[구글 Go 하자] 13. iota를 사용하여 규칙적인 상수 열거하기


반응형