Hogy egy népszerű, ötkötetes sorozat különböző könyveiből több példányt adjon el, egy könyvesbolt úgy döntött, hogy kedvezményt ad, ha valaki több könyvet vásárol.
Az öt könyv bármelyikének egy példánya $8-ba kerül.
Ha viszont két különböző könyvet veszel, akkor arra a két könyvre 5% kedvezményt kapsz.
Ha 3 különböző könyvet veszel, 10% kedvezményt kapsz.
Ha 4 különböző könyvet veszel, 20% kedvezményt kapsz.
Ha mind az 5-öt megveszed, 25% kedvezményt kapsz.
Vedd figyelembe, hogy ha négy könyvet veszel, amelyek közül 3 különböző cím, akkor arra a 3-ra, amelyek egy készletet alkotnak, 10% kedvezményt kapsz, a negyedik könyv ára viszont továbbra is $8.
A feladatod, hogy olyan kódot írj, amely kiszámítja bármely elképzelhető bevásárlókosár árát (amelyben csak ugyanannak a sorozatnak a könyvei vannak), a lehető legnagyobb kedvezményt alkalmazva.
Például mennyibe kerül ez a könyvkosár?
Ezt a 8 könyvet az egyik lehetséges módon így csoportosíthatod:
Ez a következő végösszeget adná:
Az eredmény:
Ez összesen $51.60.
Ezt a 8 könyvet viszont másképp is csoportosíthatod:
Ez a következő végösszeget adná:
Az eredmény:
Ez összesen $51.20.
A legnagyobb kedvezményt adva pedig az ár $51.20.
Definiálj egy függvényt, a cost-ot, amely egy adott könyvlista költségét számítja ki a meghatározott kedvezmények alapján.
A cost a kedvezmények utáni teljes költséget adja vissza centben.
Egyetlen könyv esetén például a költség 800 cent, ami 8,00 dollárnak felel meg.
Ehhez a feladathoz csak egész számokkal végzett számításokra van szükség.
Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) JavaScript nyelvet 37 fogalom159 feladat segítségével, valódi emberi mentorálással, mindez ingyen.