Raspberry Pi로 무언가를 만들고 싶다면, 아마 _저항기_를 사용하게 될 거예요.
이전의 Resistor Color Duo와 Resistor Color Trio 연습 문제처럼, 이번에도 저항기의 색 띠를 사람이 읽을 수 있는 레이블로 변환하게 돼요.
이 연습 문제에서는 색띠의 값을 외우지 않아도 되도록 도와주는 프로그램을 만들어 볼 거예요. 이 프로그램은 색 1개, 4개 또는 5개를 입력으로 받아서 올바른 값을 옴 단위로 출력해요. 색띠는 다음과 같이 인코딩되어 있어요:
Resistor Color Trio에서는 처음 세 가지 색띠를 해독했어요.
예를 들어 orange-orange-brown은 기준값 330이 됐죠.
이번 연습 문제에서는 여기에 _허용 오차_를 더해야 해요.
허용 오차는 값이 기준값에서 위나 아래로 벗어날 수 있는 최대치예요.
예를 들어 마지막 색띠가 green이면 최대 허용 오차는 ±0.5%가 돼요.
허용 오차 색띠는 다음 값 중 하나를 가져요:
4색띠 저항은 이렇게 구성돼 있어요:
| 색띠 1 | 색띠 2 | 색띠 3 | 색띠 4 |
|---|---|---|---|
| 값 1 | 값 2 | 배수 | 허용 오차 |
예시:
330 ohms이고 허용 오차는 ±0.5%예요.3300 ohms이고 허용 오차는 ±0.05%예요.4색띠 저항과 5색띠 저항의 차이는, 5색띠 저항에는 더 정밀한 값을 나타내는 색띠가 하나 더 있다는 점이에요.
| 색띠 1 | 색띠 2 | 색띠 3 | 색띠 4 | 색띠 5 |
|---|---|---|---|---|
| 값 1 | 값 2 | 값 3 | 배수 | 허용 오차 |
예시:
333 ohms이고 허용 오차는 ±0.5%예요.323 million ohms이고 허용 오차는 ±0.1%예요.색띠가 하나뿐인 저항도 있어요. 색띠가 하나인 저항은 black 색띠 하나만 있고 값은 0이에요.
프로그램은 저항 색띠 색상으로 이루어진 입력 list를 다음과 같은 레이블로 바꿔야 해요:
"... ohms ±...%"
그래서 ["orange", "orange", "black", "green"] 같은 입력이 들어오면 다음을 반환해야 해요:
"33 ohms ±0.5%"
수천 옴이 넘으면 "kiloohms"라고 해요. 1000미터를 킬로미터라고 하고 1000그램을 킬로그램이라고 하는 것과 비슷하죠.
그래서 ["orange", "orange", "orange", "grey"] 같은 입력이 들어오면 다음을 반환해야 해요:
"33 kiloohms ±0.05%"
수백만 옴이 넘으면 "megaohms"라고 해요.
그래서 ["orange", "orange", "blue", "red"] 같은 입력이 들어오면 다음을 반환해야 해요:
"33 megaohms ±2%"
Exercism에 가입하고 Python 트랙을 개념 17개연습 문제 146개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.