مسیرها
/
GDScript
GDScript
/
تمرین‌ها
/
متخصص رنگ مقاومت
متخصص رنگ مقاومت

متخصص رنگ مقاومت

آسان

مقدمه

اگر می‌خواهید چیزی با Raspberry Pi بسازید، احتمالاً از «مقاومت» استفاده می‌کنید. مانند تمرین‌های پیشین Resistor Color Duo و Resistor Color Trio، نوارهای رنگی مقاومت را به برچسب‌هایی خوانا برای انسان ترجمه می‌کنید.

  • هر مقاومت یک مقدار مقاومت دارد.
  • مقاومت‌ها کوچک‌اند، آن‌قدر کوچک که اگر مقدار مقاومت را روی‌شان چاپ کنید، خواندنش دشوار خواهد بود. برای حل این مشکل، تولیدکنندگان نوارهایی با کد رنگی روی مقاومت‌ها چاپ می‌کنند تا مقدار مقاومتشان را نشان دهند.
  • هر نوار به‌عنوان یک رقم از یک عدد عمل می‌کند. برای مثال، اگر نواری قهوه‌ای (با مقدار ۱) و پس از آن نواری سبز (با مقدار ۵) چاپ می‌کردند، به عدد ۱۵ ترجمه می‌شد.

دستورالعمل‌ها

در این تمرین می‌خواهید برنامه‌ی مفیدی بسازید تا لازم نباشد مقادیر نوارها را به خاطر بسپارید. این برنامه ۱، ۴ یا ۵ رنگ را به عنوان ورودی می‌گیرد و مقدار درست را بر حسب اهم خروجی می‌دهد. نوارهای رنگی به شکل زیر کدگذاری می‌شوند:

  • 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%

مقاومت چهارنواری به این شکل ساخته می‌شود:

نوار_۱ نوار_۲ نوار_۳ نوار_۴
مقدار_۱ مقدار_۲ ضریب تلورانس

یعنی:

  • orange-orange-brown-green برابر 330 اهم با تلورانس ±0.5% است.
  • orange-orange-red-grey برابر 3300 اهم با تلورانس ±0.05% است.

تفاوت مقاومت چهارنواری و پنج‌نواری در این است که مقاومت پنج‌نواری یک نوار اضافه برای نشان دادن مقدار دقیق‌تر دارد.

نوار_۱ نوار_۲ نوار_۳ نوار_۴ نوار_۵
مقدار_۱ مقدار_۲ مقدار_۳ ضریب تلورانس

یعنی:

  • 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» برای ۱۰۰۰ متر و «kilograms» برای ۱۰۰۰ گرم است.

پس ورودی «orange»، «orange»، «orange»، «grey» باید این را برگرداند:

«33 kiloohms ±0.05%»

وقتی بیش از یک میلیون اهم باشد، می‌گوییم «megaohms».

پس ورودی «orange»، «orange»، «blue»، «red» باید این را برگرداند:

«33 megaohms ±2%»

ویرایش از طریق GitHub این لینک در پنجره یا زبانه‌ی جدیدی باز می‌شود
GDScript Exercism

آماده‌اید متخصص رنگ مقاومت را شروع کنید؟

در Exercism ثبت‌نام کنید تا GDScript را همراه با 45 تمرین و مربی‌گری انسانی واقعی یاد بگیرید و در آن استاد شوید، همه‌ی این‌ها رایگان.