إذا أردت بناء شيء باستخدام Raspberry Pi، فغالبًا ستستخدم المقاومات.
مثل التمرينين السابقين Resistor Color Duo و Resistor Color Trio، ستقوم بترجمة أشرطة ألوان المقاومات إلى تسميات مقروءة للبشر.
في هذا التمرين، ستنشئ برنامجًا مفيدًا حتى لا تضطر إلى تذكّر قيم الأشرطة. سيأخذ البرنامج 1 أو 4 أو 5 ألوان كمدخلات، ويُخرج القيمة الصحيحة بوحدة ohms. تُرمَّز أشرطة الألوان كما يلي:
في تمرين resistor-color trio فكّكت ترميز الألوان الثلاثة الأولى.
على سبيل المثال: يُترجم orange-orange-brown إلى القيمة الأساسية 330.
في هذا التمرين ستحتاج إلى إضافة التفاوت إلى المعادلة.
التفاوت هو الحد الأقصى الذي يمكن أن تزيد به القيمة أو تنقص عن القيمة الأساسية.
على سبيل المثال، إذا كان الشريط الأخير green، فسيكون أقصى تفاوت ±0.5%.
سيكون لشريط التفاوت إحدى هذه القيم:
تُبنى المقاومة ذات الأشرطة الأربعة هكذا:
| الشريط_1 | الشريط_2 | الشريط_3 | الشريط_4 |
|---|---|---|---|
| القيمة_1 | القيمة_2 | المضاعف | التفاوت |
والمعنى:
الفرق بين المقاومة ذات الأربعة أشرطة والمقاومة ذات الخمسة أشرطة هو أن الأخيرة لها شريط إضافي يشير إلى قيمة أكثر دقة.
| الشريط_1 | الشريط_2 | الشريط_3 | الشريط_4 | الشريط_5 |
|---|---|---|---|---|
| القيمة_1 | القيمة_2 | القيمة_3 | المضاعف | التفاوت |
والمعنى:
هناك أيضًا مقاومات بشريط واحد. المقاومات ذات الشريط الواحد لا تحتوي إلا على اللون black بقيمة 0.
يتعلق هذا التمرين بترجمة ألوان أشرطة المقاومة إلى تسمية:
"... ohms ...%"
إذن، مدخلات مثل "orange", "orange", "black", "green" يجب أن تُرجع:
"33 ohms ±0.5%"
عندما تتجاوز القيمة ألف ohms، نقول "kiloohms". وهذا مشابه لقول كيلومتر مقابل 1000 متر، وكيلوغرام مقابل 1000 غرام.
إذن، مدخلات مثل "orange", "orange", "orange", "grey" يجب أن تُرجع:
"33 kiloohms ±0.05%"
عندما تتجاوز القيمة مليون ohms، نقول "megaohms".
إذن، مدخلات مثل "orange", "orange", "blue", "red" يجب أن تُرجع:
"33 megaohms ±2%"
سجّل في Exercism لتتعلّم وتتقن GDScript عبر 45 تمرينًا، وإرشاد بشري حقيقي، وكل ذلك مجانًا.