學習軌道
/
jq
jq
/
練習
/
電阻色碼三色環
電阻色碼三色環

電阻色碼三色環

簡單

說明

如果你想要用 Raspberry Pi 做點東西,大概就會用到_電阻_。在這個練習中,你只需要知道關於電阻的三件事:

  • 每個電阻都有它的電阻值。

  • 電阻很小,小到就算你把電阻值印在上頭,也很難看清楚。為了解決這個問題,製造商會在電阻上印上以顏色編碼的色帶,用來表示它們的電阻值。

  • 每個色帶就像是數字中的一位數。舉例來說,如果印上 brown 色帶(值為 1),後面接著 green 色帶(值為 5),那就代表數字 15。在這個練習中,你要寫一個好用的小程式,這樣你就不用去記每個色帶代表的值。這個程式會接收 3 種顏色作為輸入,並以歐姆為單位輸出正確的數值。色帶的編碼方式如下:

  • black: 0

  • brown: 1

  • red: 2

  • orange: 3

  • yellow: 4

  • green: 5

  • blue: 6

  • violet: 7

  • grey: 8

  • white: 9

在 Resistor Color Duo 裡,你解碼了前兩種顏色。例如:orange-orange 會得到主要數值33。第三種顏色代表要在主要數值後面補上幾個零。主要數值加上這些零,就是電阻的歐姆值。在這個練習裡,歐姆實際上代表什麼並不重要。例如:

  • orange-orange-black 會是 33 且不加任何零,結果是 33 ohms。
  • orange-orange-red 會是 33 再加 2 個零,結果是 3300 ohms。
  • orange-orange-orange 會是 33 再加 3 個零,結果是 33000 ohms。

(如果你對數學很在行,也可以把這些零想成 10 的次方。如果你不愛數學,那就直接用零來想。兩者其實是同一件事,只是用白話說,而不是數學術語。)

這個練習要做的,是把顏色轉換成一段標籤:

"... ohms"

所以輸入"orange", "orange", "black"時,應該回傳:

"33 ohms"

當電阻比較大時,會用公制前綴來表示更大的歐姆數量級,例如 "kiloohms"。這就像說「2 公里」而不是「2000 公尺」,或是用「2 公斤」來表示「2000 公克」一樣。

例如,輸入"orange", "orange", "orange"時,應該回傳:

"33 kiloohms"

透過 GitHub 編輯 連結會在新視窗或分頁中開啟
jq Exercism

準備好開始 電阻色碼三色環 了嗎?

註冊 Exercism,透過 12 個概念75 個練習 和真人引導來學習並精通 jq,全部免費。