Class ListinoScontato
java.lang.Object
it.unimi.di.prog2.temisvolti.bancarelle.AbstracListinoUnitario
it.unimi.di.prog2.temisvolti.bancarelle.ListinoScontato
- All Implemented Interfaces:
Listino
Classe concreta che implementa un listino in cui il prezzo totale di n giocattoli di
un dato tipo è pari a n volte il prezzo unitario di tale giocattolo (eventualmente
scontato per i valori di n che eccedono una certa soglia).
Ad esempio, se la soglia fosse 20 e lo sconto 30%, acquistando un giocattolo di prezzo unitario 12, i primi 20 giocattoli avrebbero un prezzo di 12 l'uno, quelli dal 21 in poi avrebbero prezzo pari a 8 (che è 12 a cui viene applicata una riduzione del 30%).
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionListinoScontato
(Map<Giocattolo, Integer> prezzoUnitario, int soglia, int sconto) Costruisce un listino a partire da una mappa tra giocattoli e prezzi unitari e i valori di soglia e sconto. -
Method Summary
Modifier and TypeMethodDescriptionint
prezzo
(int num, Giocattolo giocattolo) Indica il prezzo di un certo numero di giocattoli di un dato tipo.Methods inherited from class it.unimi.di.prog2.temisvolti.bancarelle.AbstracListinoUnitario
conosce, prezzoUnitario
-
Field Details
-
soglia
private final int sogliaLa soglia e lo sconto che caratterizzano questo scontrino. -
sconto
private final int scontoLa soglia e lo sconto che caratterizzano questo scontrino.
-
-
Constructor Details
-
ListinoScontato
Costruisce un listino a partire da una mappa tra giocattoli e prezzi unitari e i valori di soglia e sconto.- Parameters:
prezzoUnitario
- la mappa.soglia
- la soglia.sconto
- lo sconto.- Throws:
IllegalArgumentException
- se la soglia non è positiva, o lo sconto non è compreso tra 1 e 100 (estremi inclusi).- See Also:
-
-
Method Details
-
prezzo
Description copied from interface:Listino
Indica il prezzo di un certo numero di giocattoli di un dato tipo.- Specified by:
prezzo
in interfaceListino
- Specified by:
prezzo
in classAbstracListinoUnitario
- Parameters:
num
- il numero di giocattoli.giocattolo
- il giocattolo.- Returns:
- il prezzo del dato numero di giocattoli indicati.
-