250x250
반응형
Notice
Recent Posts
Recent Comments
Link
BOID
swift에서 n진법 계산하기! ( radix: ) - HoonIOS 본문
728x90
안녕하세요, HoonIOS입니다. :)
프로그래머스에서 기초적인 진법 변환 알고리즘을 일일이 계산해서 풀려고 했는데 swift에는 진법 변환을 하는 문법이 있더라고요!
그래서 진법 계산할때 유용하게 사용하면 좋을 거 같아 포스팅을 하게 되었습니다.
swift에서 n진법으로 구현을 하기 위해서는 radix:를 통해서 간단하게 구현을 할 수 있습니다.
한번 바꿔 볼까요?
* 코드 설명
- String(ten, radix: 2)의 문법은 변수로 받은 10의 10진법을 2진수로 바꿔주라 라는 말입니다.
- 즉 raidix에 해당하는 진수로 바꿔줘!라는 말과 같습니다.
- 원래 String( , raidx:)를 사용하면 String으로 반환을 하게 되는데 여기서는 Int형으로 변환을 해줬는데요, 그 이유는 없습니다... 그냥 숫자여서 Int형으로 받고 싶어서 변환해주었습니다. ㅎㅎ
그럼 이것을 이제 다시 10진수로 바꿔주겠습니다.
그러기 위해서 Int형의 radix init을 사용해야 하는데요, 애플 공식문서를 한번 살펴보겠습니다.
* 설명
- 공식문서에 따르면 받은 string과 radix값으로 부터 새로운 값을 만들어주는 것이라고 쓰여있습니다.
- S에는 StringProtocol을 통해 문자열 변수를 가져오면 해당 문자열이 해당하는 진수를 raidx에 적어주면 됩니다.
그럼 radix에 해당하는 진수 값을 10진수로 변환을 하게 됩니다.
위에서 2진수로 바꿔줬던 HoonIOS변수를 한번 사용해보겠습니다.
* 코드 설명
- Int( n , radix: 2)는 이건 2진수로 되어있어 그러니깐 n값을 10진수로 바꿔줘!라고 말하는 것과 같습니다.
단, 여기서 n은 Int형이 아닌 String형이 들어가야 됩니다.
위 공식문서에 s는 StringProtocol이야라고 나와있는 게 보이시죠?
이렇게 10진법과 n진법으로 변환 방법을 알아봤습니다. 쉬우면서도 간단한 방법 하네요 :)
반응형
'알고리즘에 유용한 문법' 카테고리의 다른 글
Swift - string 관련 property 및 method (2탄) (0) | 2021.07.01 |
---|---|
string 관련 property 및 method (1탄) (0) | 2021.06.26 |
배열의 인덱스 구분하기( indices, enumerated ) - HoonIOS (0) | 2021.05.12 |
Comments