저항 색상

저항 색상

보통

지침

Raspberry Pi를 사용해 무언가를 만들고 싶다면, 아마 _저항기_를 사용하게 될 거예요. 이 연습 문제에서는 저항기에 대해 두 가지를 알아야 해요:

  • 각 저항기에는 저항값이 있어요.
  • 저항기는 아주 작아요. 저항값을 저항기 위에 인쇄하더라도 읽기 어려울 정도로요.

이 문제를 해결하기 위해, 제조사들은 저항기 위에 색으로 구분된 띠를 인쇄해 저항값을 나타내요. 각 띠에는 위치와 숫자 값이 있어요.

저항기의 처음 두 띠는 간단한 인코딩 방식을 따라요: 각 색은 하나의 숫자에 대응해요.

이 연습 문제에서는 띠의 값을 외우지 않아도 되도록 도와주는 프로그램을 만들어 볼 거예요.

색은 다음과 같이 인코딩돼요:

  • black: 0
  • brown: 1
  • red: 2
  • orange: 3
  • yellow: 4
  • green: 5
  • blue: 6
  • violet: 7
  • grey: 8
  • white: 9

이 연습 문제의 목표는 다음과 같은 기능을 만드는 거예요:

  • 특정 색 띠에 해당하는 숫자 값을 조회하기
  • 서로 다른 띠 색을 나열하기

니모닉은 색을 숫자에 연결해 주는데, 이 숫자들은 배열로 저장하면 배열에서의 인덱스와 우연히 일치하게 돼요: Better Be Right Or Your Great Big Values Go Wrong.

저항기의 색 인코딩에 대한 더 자세한 정보는 전자 색 코드 위키백과 문서에서 찾을 수 있어요.

예약된 메모리

입력 문자열을 위한 버퍼는 선형 메모리의 64번부터 191번 바이트를 사용해요.

배열

WebAssembly에는 배열이라는 개념이 없어요. 색상 테스트에서는 black,brown,red,orange,yellow,green,blue,violet,grey,white 형태로 쉼표로 구분된 문자 버퍼를 반환해요.

그런 다음에는 오프셋과 길이를 사용해서 이 버퍼에 구조를 부여할 구조체 배열을 내부적으로 만들어야 해요.

GitHub에서 편집 링크가 새 창이나 탭에서 열려요
WebAssembly Exercism

저항 색상 문제를 시작해 볼 준비가 됐나요?

Exercism에 가입하고 WebAssembly 트랙을 연습 문제 87개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.