package financial // PaybackCalculatorImpl implements PaybackCalculator interface type PaybackCalculatorImpl struct{} // NewPaybackCalculator creates a new payback period calculator func NewPaybackCalculator() PaybackCalculator { return &PaybackCalculatorImpl{} } // CalculatePaybackPeriod calculates simple payback period // payback = CAPEX / annual_cash_flow func (pb *PaybackCalculatorImpl) CalculatePaybackPeriod(capex, annualCashFlow float64) float64 { if annualCashFlow <= 0 { return 999.0 // Never pays back } return capex / annualCashFlow }