If you want to build something using a Raspberry Pi, you'll probably use resistors.
Like the previous
Resistor Color Duo and
Resistor Color Trio exercises, you will be translating resistor color bands to human-readable labels.
In this exercise, you are going to create a helpful program so that you don't have to remember the values of the bands. The program will take 1, 4, or 5 colors as input, and outputs the correct value, in ohms. The color bands are encoded as follows:
resistor-color trio you decoded the first three colors.
For instance: orange-orange-brown translated to the main value
In this exercise you will need to add tolerance to the mix.
Tolerance is the maximum amount that a value can be above or below the main value.
For example, if the last band is green, the maximum tolerance will be ±0.5%.
The tolerance band will have one of these values:
The four-band resistor is built up like this:
The difference between a four and five-band resistor is that the five-band resistor has an extra band to indicate a more precise value.
There are also one band resistors. One band resistors only have the color black with a value of 0.
This exercise is about translating the resistor band colors into a label:
"... ohms ...%"
So an input of "orange", "orange", "black, green" should return:
"33 ohms ±0.5%"
When there are more than a thousand ohms, we say "kiloohms". That's similar to saying "kilometer" for 1000 meters, and "kilograms" for 1000 grams.
So an input of "orange", "orange", "orange", grey should return:
"33 kiloohms ±0.05%"
When there are more than a million ohms, we say "megaohms".
So an input of "orange", "orange", "orange", "red" should return:
"33 megaohms ±2%"