Se vuoi costruire qualcosa usando un Raspberry Pi, probabilmente userai delle resistenze.
Come negli esercizi precedenti Resistor Color Duo e Resistor Color Trio, convertirai le bande colorate delle resistenze in etichette leggibili da una persona.
In questo esercizio creerai un programma che ti aiuterà a non dover ricordare i valori delle bande. Il programma prenderà in input 1, 4 o 5 colori e restituirà il valore corretto in ohm. I colori delle bande sono codificati così:
In Resistor Color Trio hai decodificato le prime tre bande colorate.
Per esempio: orange-orange-brown corrisponde al valore principale 330.
In questo esercizio dovrai aggiungere anche la tolleranza.
La tolleranza è la quantità massima di cui un valore può stare sopra o sotto il valore principale.
Per esempio, se l'ultima banda è green, la tolleranza massima sarà ±0.5%.
La banda della tolleranza avrà uno di questi valori:
Il resistore a quattro bande è composto così:
| Banda_1 | Banda_2 | Banda_3 | Banda_4 |
|---|---|---|---|
| Valore_1 | Valore_2 | Moltiplicatore | Tolleranza |
Esempi:
330 ohm con una tolleranza di ±0.5%.3300 ohm con una tolleranza di ±0.05%.La differenza tra un resistore a quattro bande e uno a cinque bande è che quello a cinque bande ha una banda in più per indicare un valore più preciso.
| Banda_1 | Banda_2 | Banda_3 | Banda_4 | Banda_5 |
|---|---|---|---|---|
| Valore_1 | Valore_2 | Valore_3 | Moltiplicatore | Tolleranza |
Esempi:
333 ohm con una tolleranza di ±0.5%.323 million ohm con una tolleranza di ±0.1%.Esistono anche resistori a una banda. I resistori a una banda hanno solo il colore black, con un valore di 0.
Il programma deve tradurre una list di colori delle bande di un resistore in un'etichetta:
"... ohms ±...%"
Quindi una list di input come ["orange", "orange", "black", "green"] dovrebbe restituire:
"33 ohms ±0.5%"
Quando ci sono migliaia di ohm, diciamo «kiloohms». È simile a dire «chilometro» per 1000 metri e «chilogrammi» per 1000 grammi.
Quindi una list di input come ["orange", "orange", "orange", "grey"] dovrebbe restituire:
"33 kiloohms ±0.05%"
Quando ci sono milioni di ohm, diciamo «megaohms».
Quindi una list di input come ["orange", "orange", "blue", "red"] dovrebbe restituire:
"33 megaohms ±2%"
Iscriviti a Exercism per imparare e padroneggiare Python con 17 concetti146 esercizi e il mentoring di persone reali, tutto gratis.