script_606cvmn_606.py

49,00 

Simuler l’évolution de la population des mammouths et des humains sur une période donnée via un modèle écologique proie-prédateur simplifié.

UGS : script_606cvmn_606.py Catégorie : Étiquette :

🔷 INFORMATIONS GÉNÉRALES

Champ Détail

Nom du script script_606cvmn_606.py

Version 1.0.0

Date de création 17/03/2026

Auteur / Demandeur IA Généré (Gemini)

Objectif principal Simuler l’évolution de la population des mammouths et des humains sur une période donnée via un modèle écologique proie-prédateur simplifié.

🎯 DESCRIPTION FONCTIONNELLE

📌 Que fait ce script ?

Ce script exécute une simulation itérative (année par année) qui calcule les fluctuations démographiques entre deux espèces : les mammouths (proies) et les humains (prédateurs). Il prend en compte des facteurs de croissance, de limite de ressources (capacité de charge) et de survie liée à la chasse.

📌 Problème résolu

Il permet de modéliser mathématiquement l’impact de la chasse et de la disponibilité des ressources sur l’extinction ou la survie d’une espèce, tout en exportant les données pour une analyse ultérieure (ex: via Excel ou Python Pandas).

⚙️ SPÉCIFICATIONS TECHNIQUES

🐍 Environnement

Élément Valeur

Version Python 3.x

OS cible Tous (Windows / Linux / MacOS)

Mode d’exécution CLI (Ligne de commande)

📦 Dépendances / Librairies

# Librairies standard (built-in)

csv : Pour la génération du fichier de résultats.

📥 ENTRÉES (INPUTS)

# Nom Type Obligatoire Description Exemple

1 annees int ❌ Non Nombre d’années de simulation 100

2 fichier_sortie str ❌ Non Nom du fichier CSV généré « simulation.csv »

📂 Fichiers / Sources de données en entrée

Aucun fichier externe requis (les paramètres sont codés en dur dans le script).

📤 SORTIES (OUTPUTS)

# Nom Type Description Exemple

1 donnees list Tableau contenant l’historique annuel [0, 500.0, 20.0]

📂 Fichiers / Données en sortie

Type Chemin / Format Description

CSV ./simulation_ecologique.csv Résultats détaillés (Année, Pop Mammouths, Pop Humains)

🧱 STRUCTURE DU SCRIPT

script_606cvmn_606.py

├── 📌 IMPORTS (csv)

├── 📌 FONCTIONS

│ └── simuler_prehistoire() → Gère la boucle de calcul et l’export CSV

└── 📌 MAIN (Appel de la simulation)

🔧 Détail des fonctions principales

Fonction Paramètres Retour Rôle

simuler_prehistoire annees, fichier_sortie None Calcule les populations et écrit le CSV.

🔄 LOGIQUE / ALGORITHME

Initialisation : Fixe les populations de départ (Mammouths=500, Humains=20).

Boucle Temporelle : Pour chaque année :

Calcul de la mortalité des mammouths (fonction de l’efficacité de la chasse et du nombre d’humains).

Calcul des naissances de mammouths (avec une limite de 1000 individus).

Calcul des naissances humaines (basé sur les calories obtenues par la chasse).

Calcul de la mortalité humaine (famine naturelle).

Mise à jour des stocks avec sécurité « anti-négatif » (max(0, x)).

Export : Écriture de la liste donnees dans le fichier CSV.

🚨 GESTION DES ERREURS

Cas d’erreur Type d’exception Comportement attendu

Échec d’écriture IOError Affiche « Erreur lors de l’écriture du fichier. »

✅ CONTRAINTES & RÈGLES MÉTIER

Règle 1 : La population de mammouths ne peut pas dépasser la capacité de charge (implicitement liée au facteur 1−1000mammouths​).

Règle 2 : Les populations ne peuvent jamais être négatives.

Règle 3 : Les valeurs numériques sont arrondies à 2 décimales pour la lisibilité du CSV.

🧪 TESTS ATTENDUS

# Cas de test Entrée Résultat attendu Statut

1 Cas nominal Défaut (100 ans) Fichier CSV créé avec 101 lignes ⬜ À tester

2 Simulation longue 10 000 ans Vérifier si une espèce s’éteint ⬜ À tester

3 Droits d’écriture Fichier ouvert Capture de l’IOError ⬜ À tester

📝 EXEMPLE D’UTILISATION

▶️ Lancement en ligne de commande

Bash

python script_606cvmn_606.py

📋 Exemple de sortie attendue (Console)

Plaintext

Simulation terminée ! Résultats enregistrés dans ‘simulation_ecologique.csv’

Avis

Il n’y a pas encore d’avis.

Soyez le premier à laisser votre avis sur “script_606cvmn_606.py”

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *