Rezystory zwykle mają kolorowe paski , które służą do identyfikacji ich rezystancji w omach . W tym wyzwaniu rozważymy tylko normalne 4-pasmowe, tanowe oporniki osiowo-ołowiowe. Wyrażymy je jako:
xyzt
Gdzie xjest pierwsze pasmo dla pierwszej cyfry znaczącej, yto drugie pasmo dla drugiej cyfry znaczącej, ztrzecie pasmo dla mnożnika i tjest czwartym pasmem dla tolerancji .
Każda z nich xyztreprezentuje literę, która skraca kolor paska:
K = Black
N = Brown
R = Red
O = Orange
Y = Yellow
G = Green
B = Blue
V = Violet
A = Gray
W = White
g = Gold
s = Silver
_ = None
Na przykład NKOgjest jakiś konkretny opornik.
Opór można obliczyć za pomocą tej tabeli:
Jak sugeruje tabela:
xiymogą być dowolne litery exceptg,soraz_.zmoże być cokolwiek oprócz_.- Będziemy ograniczać
tsię tylkog,sczy_.
( Oto przydatny kalkulator rezystancji, który obsługuje dokładnie taki sam zestaw rezystorów, jak my. )
Opór jest pomnożony 10 * x + yprzez zmnożnik, z tolerancją tprocentową.
Na przykład, aby obliczyć opór
NKOg, widzimy, że:
Noznacza brązowy dla 1.Koznacza czarny dla 0.Ooznacza pomarańczowy dla 10 3 .goznacza złoto za ± 5%.Tak więc opór wynosi
(10*1 + 0)*10^3→10000 Ω ±5%.
Wyzwanie
Napisz program lub funkcję, która pobiera 4-znakowy ciąg formularza xyzti wyświetla lub zwraca opór w formularzu [resistance] Ω ±[tolerance]%.
- Rezystor może być „do góry nogami”, tj. W odwrotnej kolejności
tzyx. Na przykład obaNKOgigOKNpowinny produkować10000 Ω ±5%. - Rezystancja jest zawsze wyrażona w zwykłych omach, nigdy w kiloomach, megaomach itp.
Ωmożna zastąpićohmsnp10000 ohms ±5%.±można zastąpić+/-np10000 Ω +/-5%.- Końcowe zera po prawej stronie przecinka dziesiętnego jest w porządku. (np.
10000.0 Ω +/-5%) - Możesz założyć, że dane wejściowe są zawsze prawidłowe (
xiynigdygs_;znigdy_;ttylkogs_). - Wszystkie 10 × 10 × 12 × 3 = 3600 możliwych rezystorów (2 × 3600 możliwych wejść) muszą być obsługiwane, nawet jeśli niektóre kombinacje pasm kolorów nie są produkowane w rzeczywistości.
Najkrótszy kod w bajtach wygrywa.
Przykłady
gOKN→10000 ohms +/-5%KKR_→0 Ω +/-20%ggKN→1 ohms ±5%ggGO→3.5 Ω ±5%ssGO→0.350 Ω ±10%GOOs→53000 ohms +/-10%YAK_→48.0 ohms +/-20%_WAV→78000000000 Ω ±20%gBBB→66000000.000 ohms ±5%_RYR→2400.00 ohms ±20%
IFF lubisz moje wyzwaniom, należy rozważyć checking out budulcem Bot stad!

:(2/'e*s~ratuje[.