# C1-A04 — Corrige le chemin

import { ActivityHero } from "../../../src/components/ActivityHero";
import { ActivitySolution } from "../../../src/components/ActivitySolution";
import { BonusChallenge } from "../../../src/components/BonusChallenge";
import { CompletionCheck } from "../../../src/components/CompletionCheck";
import { GridMap } from "../../../src/components/GridMap";
import { Hint } from "../../../src/components/Hint";
import { PrintableVersion } from "../../../src/components/PrintableVersion";
import { StarterProject } from "../../../src/components/StarterProject";
import { StudentStep } from "../../../src/components/StudentStep";
import { TeacherAccess } from "../../../src/components/TeacherAccess";
import { TryIt } from "../../../src/components/TryIt";

<ActivityHero
  id="C1-A04"
  title="Corrige l'erreur sur le chemin (Le débogage)"
  cycle="1"
  level="Moyenne Section & Grande Section"
  duration="20 min"
  tool="Sans écran (Grille et cartes)"
  difficulty="Entraînement"
  needsAdult={false}
  mission="Oups ! Le robot a fait une bêtise : son programme contient une mauvaise flèche qui l'envoie dans une flaque d'eau. Trouve la carte fautive et remplace-la !"
/>

<PrintableVersion
  pdfColorUrl="/downloads/c1-a04-corrige-le-chemin.pdf"
  pdfColorName="Fiche d'activité : Le carnet du dépanneur (A4)"
/>

<StarterProject
  title="Matériel de départ"
  type="paper"
  preparedItems={[
    "1 quadrillage 3x3 cases avec le robot en A1, la maison en C3 et la flaque d'eau en B2",
    "Le programme préparé avec 4 cartes : [➡️ Droite] [⬇️ Bas] [⬅️ Gauche] [⬇️ Bas] (Contient 1 bogue !)",
    "Des cartes-flèches de remplacement",
  ]}
/>

---

## 🗺️ La grille du chemin défectueux

<GridMap
  cols={3}
  rows={3}
  start={[0, 0]}
  target={[2, 2]}
  obstacles={[[1, 1]]}
  title="Grille du parcours avec obstacle en B2"
  theme="robot"
/>

---

## 🪜 Les étapes de ta mission

<StudentStep
  number={1}
  title="Exécute le programme pas à pas"
  check="Je déplace mon pion flèche par flèche."
>
  Pose ton pion sur la case départ A1. Avance flèche par flèche : 1. ➡️ Droite (vers B1) : OK ! 2.
  ⬇️ Bas (vers B2) : **STOP ! C'est la flaque d'eau !**
</StudentStep>

<StudentStep
  number={2}
  title="Retire uniquement la mauvaise flèche"
  check="Je ne jette pas tout mon programme à la poubelle !"
>
  La flèche numéro 2 (⬇️) envoie le robot dans l'eau. Retire seulement cette flèche de ta ligne de
  cartes.
</StudentStep>

<StudentStep
  number={3}
  title="Remplace par la bonne flèche"
  check="Le robot contourne la flaque par la droite."
>
  Mets une flèche ➡️ (Droite vers C1) à la place. Ensuite, descends deux fois (⬇️ ⬇️) pour arriver à
  la maison C3 !
</StudentStep>

---

## 🧪 Teste ton parcours réparé

<TryIt expected="Le robot évite la flaque B2 et arrive sain et sauf à la maison C3 sans encombre.">
  Exécute ton nouveau programme complet pour valider la réparation.
</TryIt>

---

## 💡 Indices progressifs

<Hint
  hints={[
    {
      level: 1,
      title: "Indice 1 — Où est l'obstacle ?",
      content: <p>L'obstacle se trouve sur la case B2, juste en dessous de B1.</p>,
    },
    {
      level: 2,
      title: "Indice 2 — Quel virage prendre ?",
      content: (
        <p>Depuis la case B1, continue tout droit vers la droite (C1) au lieu de descendre !</p>
      ),
    },
    {
      level: 3,
      title: "Indice 3 — La solution complète",
      content: <p>➡️ Droite, ➡️ Droite, ⬇️ Bas, ⬇️ Bas.</p>,
    },
  ]}
/>

---

## 🔍 Solution et explications

<ActivitySolution title="Voir le programme réparé">
Le programme corrigé comporte 4 flèches :
1. ➡️ Droite (vers B1)
2. ➡️ Droite (vers C1)
3. ⬇️ Bas (vers C2)
4. ⬇️ Bas (vers C3 - Maison atteinte !)

**Règle du dépanneur :** Quand une machine a une panne, on cherche le morceau cassé et on le remplace, sans tout casser !

</ActivitySolution>

---

## 🌟 Défi bonus

<BonusChallenge title="Défi bonus : Crée un piège pour un camarade !">
  Invente un programme avec une flèche fausse sur ta grille. Donne-le à ton camarade et chronomètre
  le temps qu'il met à trouver le bogue !
</BonusChallenge>

---

<CompletionCheck
  activityId="C1-A04"
  nextActivityUrl="/activites/cycle-1/c1-a05-fais-danser-le-personnage"
  nextActivityTitle="C1-A05 — Fais danser le personnage"
  cycleUrl="/activites/cycle-1"
/>

<TeacherAccess
  lessonId="C1-S04"
  lessonTitle="Repérer et corriger une erreur"
  lessonUrl="/cycle-1/c1-s04-reperer-et-corriger-une-erreur"
/>
