Se queres construir algo com um Raspberry Pi, provavelmente vais usar resistências.
Tal como nos exercícios anteriores Resistor Color Duo e Resistor Color Trio, vais traduzir as faixas de cor das resistências em etiquetas legíveis para humanos.
Neste exercício, vais criar um programa útil para não teres de te lembrar dos valores das bandas. O programa recebe 1, 4 ou 5 cores como valores de entrada e devolve o valor correto em ohms. As bandas de cor estão codificadas da seguinte forma:
Em Resistor Color Trio descodificaste as três primeiras bandas de cor.
Por exemplo: orange-orange-brown traduz-se no valor principal 330.
Neste exercício, vais ter de acrescentar a tolerância à mistura.
A tolerância é o máximo que um valor pode estar acima ou abaixo do valor principal.
Por exemplo, se a última banda for green, a tolerância máxima será de ±0.5%.
A banda de tolerância tem um destes valores:
A resistência de quatro bandas é composta da seguinte forma:
| Banda_1 | Banda_2 | Banda_3 | Banda_4 |
|---|---|---|---|
| Valor_1 | Valor_2 | Multiplicador | Tolerância |
Exemplos:
330 ohms com uma tolerância de ±0.5%.3300 ohms com uma tolerância de ±0.05%.A diferença entre uma resistência de quatro bandas e uma de cinco bandas é que a de cinco bandas tem uma banda extra que indica um valor mais preciso.
| Banda_1 | Banda_2 | Banda_3 | Banda_4 | Banda_5 |
|---|---|---|---|---|
| Valor_1 | Valor_2 | Valor_3 | Multiplicador | Tolerância |
Exemplos:
333 ohms com uma tolerância de ±0.5%.323 million ohms com uma tolerância de ±0.1%.Há também resistências de uma só banda. As resistências de uma só banda têm apenas a cor black, com um valor de 0.
O teu programa deve traduzir uma list de entrada com as cores das bandas da resistência numa etiqueta:
"... ohms ±...%"
Por isso, uma list de entrada ["orange", "orange", "black", "green"] deve devolver:
"33 ohms ±0.5%"
Quando há milhares de ohms, dizemos "kiloohms". É semelhante a dizer "kilometer" para 1000 meters e "kilograms" para 1000 grams.
Por isso, uma list de entrada ["orange", "orange", "orange", "grey"] deve devolver:
"33 kiloohms ±0.05%"
Quando há milhões de ohms, dizemos "megaohms".
Por isso, uma list de entrada ["orange", "orange", "blue", "red"] deve devolver:
"33 megaohms ±2%"
Inscreve-te no Exercism para aprenderes e dominares Python com 17 conceitos146 exercícios, e mentoria humana real, tudo grátis.