Percursos
/
Crystal
Crystal
/
Exercícios
/
Especialista em Cores de Resistências
Especialista em Cores de Resistências

Especialista em Cores de Resistências

Fácil

Introdução

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.

  • Cada resistência tem um valor de resistência.
  • As resistências são pequenas, tão pequenas que, se imprimissem nelas o valor da resistência, seria difícil de ler. Para contornar este problema, os fabricantes imprimem faixas com código de cor nas resistências, para indicar os seus valores de resistência.
  • Cada faixa funciona como um algarismo de um número. Por exemplo, se imprimissem uma faixa castanha (valor 1) seguida de uma faixa verde (valor 5), corresponderia ao número 15.

Instruções

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:

  • Black: 0
  • Brown: 1
  • Red: 2
  • Orange: 3
  • Yellow: 4
  • Green: 5
  • Blue: 6
  • Violet: 7
  • Grey: 8
  • White: 9

Em resistor-color trio descodificaste as três primeiras cores. Por exemplo: orange-orange-brown correspondia ao valor principal 330. Neste exercício vais ter de acrescentar a tolerância à mistura. A tolerância é a quantidade máxima 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á ±0.5%.

A banda de tolerância terá um destes valores:

  • Grey - 0.05%
  • Violet - 0.1%
  • Blue - 0.25%
  • Green - 0.5%
  • Brown - 1%
  • Red - 2%
  • Gold - 5%
  • Silver - 10%

A resistência de quatro bandas é composta assim:

Banda_1 Banda_2 Banda_3 banda_4
Valor_1 Valor_2 Multiplicador Tolerância

Ou seja:

  • orange-orange-brown-green seria 330 ohms com uma tolerância de ±0.5%.
  • orange-orange-red-grey seria 3300 ohms com uma tolerância de ±0.05%.

A diferença entre uma resistência de quatro e de cinco bandas é que a de cinco bandas tem uma banda extra para indicar um valor mais preciso.

Banda_1 Banda_2 Banda_3 Banda_4 banda_5
Valor_1 Valor_2 Valor_3 Multiplicador Tolerância

Ou seja:

  • orange-orange-orange-black-green seria 333 ohms com uma tolerância de ±0.5%.
  • orange-red-orange-blue-violet seria 323M ohms com uma tolerância de ±0.10.

Também existem resistências de uma banda. As resistências de uma banda têm apenas a cor black, com um valor de 0.

Este exercício consiste em traduzir as cores das bandas da resistência para uma etiqueta:

"... ohms ...%"

Assim, se os valores de entrada forem "orange", "orange", "black, green", o programa deve devolver:

"33 ohms ±0.5%"

Quando há mais de mil ohms, dizemos "kiloohms". É semelhante a dizer "quilómetro" para 1000 metros e "quilograma" para 1000 gramas.

Assim, se os valores de entrada forem "orange", "orange", "orange", grey, o programa deve devolver:

"33 kiloohms ±0.05%"

Quando há mais de um milhão de ohms, dizemos "megaohms".

Assim, se os valores de entrada forem "orange", "orange", "orange", "red", o programa deve devolver:

"33 megaohms ±2%"

Editar via GitHub A ligação abre numa nova janela ou separador
Crystal Exercism

Estás pronto para começar Especialista em Cores de Resistências?

Inscreve-te no Exercism para aprenderes e dominares Crystal com 26 conceitos142 exercícios, e mentoria humana real, tudo grátis.