Треки
/
PowerShell
PowerShell
/
Вправи
/
Експерт з кольорів резисторів
Експерт з кольорів резисторів

Експерт з кольорів резисторів

Легка

Вказівки

Якщо ми хочемо щось створити на Raspberry Pi, нам, найімовірніше, знадобляться резистори. Як і в попередніх вправах Resistor Color Duo та Resistor Color Trio, ми будемо перекладати кольорові смуги резисторів у зрозумілі людині позначки.

  • Кожен резистор має значення опору.
  • Резистори малі, настільки малі, що якби ми надрукували на них значення опору, його було б важко прочитати. Щоб обійти цю проблему, виробники наносять на резистори кольорові смуги, які позначають їхній опір.
  • Кожна смуга відіграє роль цифри числа. Наприклад, якби вони надрукували смугу brown (значення 1), а потім смугу green (значення 5), це відповідало б числу 15.

Завдання

У цій вправі ми створимо корисну програму, щоб нам не доводилося запамʼятовувати значення смуг. Програма прийматиме 1, 4 або 5 кольорів як вхідні дані та видаватиме правильне значення в омах. Кольорові смуги кодуються так:

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

У вправі resistor-color trio ми розшифрували перші три кольори. Наприклад, orange-orange-brown відповідало основному значенню 330. У цій вправі нам потрібно буде додати до всього цього допуск. Допуск визначає, наскільки значення може відхилятися в більшу чи меншу сторону від основного значення. Наприклад, якщо остання смуга green, максимальний допуск становитиме ±0.5%.

Смуга допуску матиме одне з таких значень:

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

Чотирисмуговий резистор влаштований так:

Смуга_1 Смуга_2 Смуга_3 смуга_4
Значення_1 Значення_2 Множник Допуск

Це означає:

  • orange-orange-brown-green давало б 330 ом із допуском ±0.5%.
  • orange-orange-red-grey давало б 3300 ом із допуском ±0.05%.

Різниця між чотири- та пʼятисмуговим резистором у тому, що пʼятисмуговий резистор має додаткову смугу, яка вказує точніше значення.

Смуга_1 Смуга_2 Смуга_3 Смуга_4 смуга_5
Значення_1 Значення_2 Значення_3 Множник Допуск

Це означає:

  • orange-orange-orange-black-green давало б 333 ом із допуском ±0.5%.
  • orange-red-orange-blue-violet давало б 323M ом із допуском ±0.10.

Бувають також односмугові резистори. Односмугові резистори мають лише колір black зі значенням 0.

У цій вправі потрібно перекласти кольори смуг резистора в позначку:

«... ohms ...%»

Отже, для вхідних даних «orange», «orange», «black», «green» програма має повернути:

«33 ohms ±0.5%»

Коли опір перевищує тисячу ом, ми кажемо «kiloohms». Це схоже на «kilometer» для 1000 метрів і «kilograms» для 1000 грамів.

Отже, для вхідних даних «orange», «orange», «orange», «grey» програма має повернути:

«33 kiloohms ±0.05%»

Коли опір перевищує мільйон ом, ми кажемо «megaohms».

Отже, для вхідних даних «orange», «orange», «blue», «red» програма має повернути:

«33 megaohms ±2%»

Редагувати через GitHub Посилання відкривається в новому вікні або вкладці
PowerShell Exercism

Час розпочати Експерт з кольорів резисторів?

Зареєструйтеся на Exercism, щоб вивчати й опановувати PowerShell, а також 136 вправ та справжнє наставництво від людей, і все це безкоштовно.