Back
Java

BrianzaTrains

Sistema Biglietteria Treni Regionali

πŸ“‹ Descrizione Progetto

BrianzaTrains Γ¨ un sistema completo di gestione biglietti per la rete ferroviaria regionale della Brianza. Il sistema supporta 4 stazioni principali (Milano, Monza, Osnago, Lecco) con calcolo automatico delle tariffe basato sulla distanza e sulla classe del treno.

πŸš‚ Stazioni Supportate

Milano

Stazione principale, hub di connessione

Monza

CittΓ  intermedia della Brianza

Osnago

Stazione della Brianza orientale

Lecco

Destinazione finale sul lago

✨ Caratteristiche Principali

πŸ’° Sistema Tariffario

  • Classe 1: €0.20/km
  • Classe 2: €0.15/km
  • Prezzo minimo: €1.70

πŸ—ΊοΈ Gestione Percorsi

  • Matrice distanze predefinita
  • Calcolo automatico km tra stazioni
  • Supporto percorsi bidirezionali

πŸ‘₯ Dati Passeggero

  • Nome completo
  • EtΓ 
  • Orari partenza/arrivo

πŸ“„ Output Multi-formato

  • Console con emoji decorativi
  • File HTML con template
  • Generazione biglietti multipli

πŸ“ Matrice Distanze (km)

Da / A Milano Monza Osnago Lecco
Milano - 15 km 35 km 65 km
Monza 15 km - 20 km 50 km
Osnago 35 km 20 km - 30 km
Lecco 65 km 50 km 30 km -

πŸ—οΈ Struttura del Progetto

Main Classes

FunzionalitΓ  Implementate

πŸ’» Tecnologie e Pattern

πŸ”§ Algoritmi Chiave

Distance Calculation

Utilizza nested switch statements per calcolare la distanza tra due stazioni qualsiasi:

Price Calculation

Formula: max(km Γ— tariffa_classe, prezzo_minimo)

Validation Strategy

πŸ“ Package Structure

com.generation.bt.main
└── PrintTicket
com.generation.library
β”œβ”€β”€ Console
β”œβ”€β”€ FileWriter
β”œβ”€β”€ FileReader
└── Template
πŸ”— Visualizza Codice su GitHub