🛠️ToolsShed

Gratuity Calculator

Calculate gratuity amount using India Act, Non-Act, UAE, or custom formula.

GratuityCalculator.salaryNote

GratuityCalculator.formulaInfo

  • GratuityCalculator.indiaActFormula
  • GratuityCalculator.indiaNonActFormula
  • GratuityCalculator.uaeFormula

Pertanyaan yang Sering Diajukan

Implementasi Kode

def calculate_gratuity(
    last_salary: float,
    years_of_service: float,
    formula: str = "india_act"
) -> float:
    """
    Calculate gratuity based on formula.
    - india_act: (15/26) * last_salary * years (for employees covered under Gratuity Act)
    - india_non_act: (15/30) * last_salary * years
    - uae: (21/30) * last_salary * years (for first 5 years, then 30 days/year)
    """
    if formula == "india_act":
        return (15 / 26) * last_salary * years_of_service
    elif formula == "india_non_act":
        return (15 / 30) * last_salary * years_of_service
    elif formula == "uae":
        if years_of_service <= 5:
            return (21 / 30) * last_salary * years_of_service
        else:
            first_five = (21 / 30) * last_salary * 5
            remaining = last_salary * (years_of_service - 5)
            return first_five + remaining
    else:
        raise ValueError(f"Unknown formula: {formula}")

salary = 50000
years = 10
print(f"India (Act): {calculate_gratuity(salary, years, 'india_act'):.2f}")
print(f"India (Non-Act): {calculate_gratuity(salary, years, 'india_non_act'):.2f}")
print(f"UAE: {calculate_gratuity(salary, years, 'uae'):.2f}")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.