🛠️ToolsShed

Calculateur d'Allure de Course

Calculez l'allure, la vitesse, le temps et la distance pour toute course.

Unit
::

La calculatrice d'allure de course convertit entre l'allure (minutes par kilomètre ou mile), la vitesse (km/h ou mph) et le temps de finition pour les distances de course courantes. C'est un outil essentiel pour planifier des courses et prescrire des entraînements.

Entrez deux des trois variables — distance, temps et allure — et l'outil calcule la troisième. Vous pouvez également entrer un temps d'arrivée cible pour une course et l'outil indique l'allure requise.

Comprendre votre allure est essentiel pour éviter de partir trop vite au début d'une course et pour structurer des séances d'entraînement par intervalles avec des allures cibles précises.

Questions Fréquentes

Implémentation du Code

def pace_to_speed(pace_min_per_km):
    """Convert pace (min/km) to speed (km/h)."""
    return 60 / pace_min_per_km

def speed_to_pace(speed_km_h):
    """Convert speed (km/h) to pace (min/km)."""
    return 60 / speed_km_h

def pace_min_km_to_min_mile(pace_min_per_km):
    """Convert pace from min/km to min/mile."""
    return pace_min_per_km * 1.60934

def finish_time_seconds(distance_km, pace_min_per_km):
    """Calculate finish time in seconds."""
    return distance_km * pace_min_per_km * 60

def format_time(total_seconds):
    """Format seconds as H:MM:SS."""
    total_seconds = int(round(total_seconds))
    h = total_seconds // 3600
    m = (total_seconds % 3600) // 60
    s = total_seconds % 60
    if h > 0:
        return f"{h}:{m:02d}:{s:02d}"
    return f"{m}:{s:02d}"

def format_pace(pace_decimal_minutes):
    """Format decimal minutes as M:SS per km."""
    m = int(pace_decimal_minutes)
    s = round((pace_decimal_minutes - m) * 60)
    if s == 60:
        m += 1; s = 0
    return f"{m}:{s:02d}"


# Standard race distances in km
RACES = {
    "5K":           5.0,
    "10K":          10.0,
    "Half Marathon": 21.0975,
    "Marathon":     42.195,
}

pace_min_km = 5.5  # e.g., 5:30 per km
print(f"Pace: {format_pace(pace_min_km)} /km")
print(f"Speed: {pace_to_speed(pace_min_km):.2f} km/h")
print(f"Pace in min/mile: {format_pace(pace_min_km_to_min_mile(pace_min_km))}")
print()

print("Race finish times:")
for race, dist in RACES.items():
    secs = finish_time_seconds(dist, pace_min_km)
    print(f"  {race:<16} {format_time(secs)}")

Comments & Feedback

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