🛠️ToolsShed

Calcolatore Apporto Idrico

Calcola il tuo apporto giornaliero raccomandato di acqua in base a peso e attività.

Il calcolatore di assunzione d'acqua stima quanta acqua dovresti bere ogni giorno in base al tuo peso corporeo, livello di attività e clima. Un'adeguata idratazione supporta la funzione renale, la digestione, la lubrificazione delle articolazioni, la regolazione della temperatura e le prestazioni cognitive.

Inserisci il tuo peso, livello di attività e se vivi in un clima caldo o sei in gravidanza o allattamento. Lo strumento calcola il tuo obiettivo quotidiano d'acqua in litri e tazze e ti fornisce una guida pratica su come distribuire quell'assunzione durante la giornata.

La vecchia regola degli "8 bicchieri al giorno" è un'approssimazione. Le tue esigenze reali dipendono dalla tua corporatura, quanto sudi e dal contenuto d'acqua del tuo cibo. Un controllo pratico è il colore dell'urina — giallo pallido indica una buona idratazione.

Domande Frequenti

Implementazione del Codice

def daily_water_intake(weight_kg, activity_level='sedentary',
                        climate='temperate', exercise_hours=0):
    """
    Estimate daily water intake in litres.

    Parameters:
        weight_kg      - body weight in kilograms
        activity_level - 'sedentary' | 'light' | 'moderate' | 'active'
        climate        - 'temperate' | 'hot' | 'cold'
        exercise_hours - hours of exercise per day

    Returns recommended daily water intake in litres.
    """
    # Base: 35 mL per kg of body weight
    base_ml = weight_kg * 35

    # Activity adjustments (mL/day)
    activity_adj = {
        'sedentary': 0,
        'light':     300,
        'moderate':  600,
        'active':    900,
    }
    base_ml += activity_adj.get(activity_level, 0)

    # Exercise: ~500 mL per hour
    base_ml += exercise_hours * 500

    # Climate adjustments
    climate_adj = {'temperate': 0, 'hot': 750, 'cold': -250}
    base_ml += climate_adj.get(climate, 0)

    return round(base_ml / 1000, 2)  # convert to litres

def cups_from_litres(litres, cup_ml=250):
    """Convert litres to number of cups."""
    return round(litres * 1000 / cup_ml, 1)

# Examples
intake = daily_water_intake(70, 'moderate', 'temperate', 1)
print(f"Daily intake: {intake:.2f} L")
print(f"As cups (250 mL): {cups_from_litres(intake)}")

active = daily_water_intake(85, 'active', 'hot', 1.5)
print(f"Active in heat: {active:.2f} L")

Comments & Feedback

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