Sistema di Biglietteria Museale con Pricing Dinamico
Museum Ticket è un sistema avanzato di biglietteria per musei che calcola il prezzo del biglietto in base a molteplici criteri: età del visitatore, reddito annuale (RAL) e classe di visita scelta. Il sistema include agevolazioni per anziani e tariffe differenziate per garantire l'accessibilità culturale.
getName() - Acquisisce e valida il nome completo del visitatoregetAge() - Richiede l'età con validazione range 0-100getRAL() - Ottiene il reddito annuale lordo con controllo positivitàgetClassChoice() - Acquisisce la scelta della classe (1 o 2)calculateCost() - Calcola il prezzo finale applicando tutte le regole di pricingInput: Nome: "Mario Rossi", Età: 75, RAL: €30,000, Classe: 1
Output: Prezzo = €3,00 (tariffa ridotta anziani)
Input: Nome: "Giulia Bianchi", Età: 28, RAL: €25,000, Classe: 2
Output: Prezzo = €5,00
Input: Nome: "Luca Verdi", Età: 45, RAL: €80,000, Classe: 1
Output: Prezzo = €15,00
Input: Nome: "Anna Neri", Età: 72, RAL: €20,000, Classe: 2
Output: Prezzo = €0,00 (ingresso gratuito)
Il sistema utilizza un template HTML (template.html) con placeholder che vengono sostituiti con i dati reali del visitatore:
[fullName] → Nome completo del visitatore[age] → Età del visitatore[classChoice] → Classe scelta (1 o 2)[price] → Prezzo calcolato del bigliettoIl biglietto generato viene salvato nella cartella print/ con nome personalizzato scelto dall'utente.
com.generation.museum.main
└── MuseumGenerator
com.generation.mg.utility
└── MGUtility
com.generation.library
├── Console
├── Template
├── FileWriter
└── FileReader