Aż do zdziesiątkowania w 1971 r. Brytyjskie pieniądze opierały się na podziale funta na 240 centów. Szyling wynosił 12 centów, więc 20 szylingów to funt. Najmniejszy nominał to grzebanie w jednej czwartej centa. Istnieje wiele innych nominałów i pseudonimów monet, co może być dość mylące, jeśli nie jesteś przyzwyczajony do systemu.
Wyzwanie
Napisz program lub funkcję, która może konwertować (prawie) dowolne nominały starych angielskich pieniędzy na dowolne inne. Aby ułatwić użytkownikowi, musisz obsługiwać liczbę mnogą i pseudonimy.
Są to nominały i ich synonimiczne warunki, które musisz wspierać. Dla wygody ich wartość w farthings prowadzi każdą linię.
1: farthing, farthings
2: halfpence, halfpenny, halfpennies
4: penny, pennies, pence, copper, coppers
8: twopenny, twopennies, twopence, tuppence, half groat, half groats
12: threepence, threepenny, threepennies, threepenny bit, threepenny bits, thruppence, thrupenny, thrupennies, thrupenny bit, thrupenny bits
16: groat, groats
24: sixpence, sixpenny, sixpennies, sixpenny bit, sixpenny bits, tanner, tanners
48: shilling, shillings, bob
96: florin, florins, two bob bit, two bob bits
120: half crown, half crowns
240: crown, crowns
480: half sovereign, half sovereigns
504: half guinea, half guineas
960: pound, pounds, pounds sterling, sovereign, sovereigns, quid, quids
1008: guinea, guineas
(Nie jestem Brytyjczykiem, ta lista nie jest autorytatywna, ale wystarczy na wyzwanie).
Za pomocą argumentu stdin lub funkcji należy przyjąć ciąg znaków
[value to convert] [denomination 1] in [denomination 2]
i zwróć lub wydrukuj
[value to convert] [denomination 1] is [converted value] [denomination 2]
w których [converted value]
to [value to convert]
jednostek nominału 1 przekształca się nominał 2.
[value to convert]
I [converted value]
są pozytywne pływaki. Na wyjściu oba powinny być zaokrąglone lub obcięte do 4 miejsc po przecinku. W razie potrzeby można założyć, że [value to convert]
zawsze ma kropkę dziesiętną i zero po wprowadzeniu (np. 1.0
Zamiast 1
).
Nominały 1 i 2 mogą być dowolnymi dwoma terminami z powyższej listy. Nie martw się, czy są w liczbie mnogiej, czy nie, traktuj wszystkie nominały i synonimy tak samo. Możesz założyć, że format wejściowy i nominały są zawsze prawidłowe.
Przykłady
1 pounds in shilling
→ 1 pounds is 20 shilling
( 1.0000 pounds is 20.0000 shilling
byłoby dobrze)
0.6 tuppence in tanner
→ 0.6 tuppence is 0.2 tanner
24 two bob bits in pounds sterling
→ 24 two bob bits is 2.4 pounds sterling
144 threepennies in guineas
→ 144 threepennies is 1.7143 guineas
Punktacja
Najkrótszy kod w bajtach wygrywa.
quid
jest quid
. Najprawdopodobniej byłoby tak samo ze starymi pieniędzmi. Przykład: Five quid a pint! Cor blimey guvnor
. Wyjątek: quids-in