new admin

This commit is contained in:
2026-05-05 22:29:04 +02:00
parent 2bf28ae392
commit b1368980f9
128 changed files with 5329 additions and 59 deletions

View File

@@ -19,12 +19,14 @@ from .auth import (
)
from .curriculum import QUESTIONS
from .program_content import (
build_program_tree,
decode_asset_token,
get_content_status,
get_lesson,
list_lessons_for_grade,
normalize_grade,
render_svg_section,
update_program_review,
)
from .services import (
build_llm_reply,
@@ -306,6 +308,26 @@ def get_program_status(
return get_content_status()
@app.get("/admin/program/tree")
def get_admin_program_tree(
current_user: models.User = Depends(require_roles("teacher", "maintenance")),
):
return build_program_tree()
@app.put("/admin/program/review")
def put_admin_program_review(
payload: schemas.ProgramReviewRequest,
current_user: models.User = Depends(require_roles("teacher", "maintenance")),
):
return update_program_review(
payload.node_key,
payload.status,
payload.comment,
current_user.username,
)
@app.get("/program/assets/{asset_token}")
def get_program_asset(
asset_token: str,

View File

@@ -1,7 +1,9 @@
import base64
import html
import json
import os
import re
from datetime import datetime
from functools import lru_cache
from pathlib import Path
from urllib.parse import quote
@@ -26,6 +28,7 @@ def default_content_root() -> Path:
CONTENT_ROOT = Path(os.getenv("PROGRAM_CONTENT_ROOT", default_content_root())).resolve()
LESSON_BACKGROUND = "#f8fafc"
REVIEW_STATE_PATH = Path(os.getenv("PROGRAM_REVIEW_STATE_PATH", CONTENT_ROOT / ".program_review_state.json"))
GRADE_ALIASES = {
"CM1": "cm1",
@@ -90,19 +93,31 @@ def find_section_context_path(svg_path: Path, asset_number: int, section_number:
return next((candidate for candidate in candidates if candidate.exists()), None)
def svg_attr(attrs: str, name: str, default: float | None = None) -> float | None:
match = re.search(rf'\b{name}="(?P<value>[-\d.]+)"', attrs)
if match:
return float(match.group("value"))
return default
def extract_svg_sections(svg_path: Path, asset_number: int | None = None) -> list[dict]:
text = svg_path.read_text(encoding="utf-8", errors="ignore")
sections: list[dict] = []
pattern = re.compile(
r'<g\s+transform="translate\((?P<x>[-\d.]+)\s+(?P<y>[-\d.]+)\)">\s*'
r'<rect\s+x="0"\s+y="0"\s+width="(?P<w>[-\d.]+)"\s+height="(?P<h>[-\d.]+)"[^>]*>'
r'<rect\b(?P<attrs>[^>]*)/?>'
r'(?P<body>.*?)</g>',
re.DOTALL,
)
for match in pattern.finditer(text):
width = float(match.group("w"))
height = float(match.group("h"))
if width < 250 or height < 120:
attrs = match.group("attrs")
rect_x = svg_attr(attrs, "x", 0)
rect_y = svg_attr(attrs, "y", 0)
width = svg_attr(attrs, "width")
height = svg_attr(attrs, "height")
if rect_x != 0 or rect_y != 0 or width is None or height is None:
continue
if width < 250 or height < 100:
continue
title_match = re.search(r'<text[^>]*>(?P<title>.*?)</text>', match.group("body"), re.DOTALL)
raw_title = re.sub(r"<[^>]+>", "", title_match.group("title") if title_match else "")
@@ -261,3 +276,105 @@ def get_content_status() -> dict:
def get_lesson(lesson_id: str) -> dict | None:
return next((lesson for lesson in list_lessons() if lesson["id"] == lesson_id), None)
def load_review_state() -> dict:
if not REVIEW_STATE_PATH.exists():
return {}
try:
return json.loads(REVIEW_STATE_PATH.read_text(encoding="utf-8"))
except json.JSONDecodeError:
return {}
def save_review_state(state: dict) -> None:
REVIEW_STATE_PATH.parent.mkdir(parents=True, exist_ok=True)
REVIEW_STATE_PATH.write_text(
json.dumps(state, ensure_ascii=False, indent=2) + "\n",
encoding="utf-8",
)
def collect_lesson_status(lesson: dict) -> dict:
lesson_dir = CONTENT_ROOT / lesson["id"]
return {
"micro_fiches": len([path for path in lesson_dir.glob("*.md") if path.name.startswith(tuple("0123456789"))]),
"lesson_svg": len(lesson.get("assets") or []),
"cards": sum(len(asset.get("sections") or []) for asset in lesson.get("assets") or []),
"contexts": len(list((lesson_dir / "card_contexts").rglob("Fiche*Card*.md"))),
"text_exercises": len(list((lesson_dir / "exercices").rglob("exercices.md"))),
"exercise_svg": len(list((lesson_dir / "exercices_svg").glob("*.svg"))),
"validations": sorted(path.stem for path in lesson_dir.glob("VALIDATION_PHASE_*.md")),
}
def append_tree_child(parent: dict, key: str, label: str, node_type: str, path: str = "") -> dict:
children = parent.setdefault("children", [])
for child in children:
if child["key"] == key:
return child
child = {"key": key, "label": label, "type": node_type, "path": path, "children": []}
children.append(child)
return child
def build_program_tree() -> dict:
reviews = load_review_state()
root = {
"key": "program",
"label": "Programme",
"type": "root",
"path": "",
"children": [],
"review": reviews.get("program", {}),
}
for lesson in list_lessons():
parts = lesson["id"].split("/")
cycle, subject, grade = parts[0], parts[1], parts[2]
theme_parts = parts[3:-1]
lesson_slug = parts[-1]
cycle_node = append_tree_child(root, cycle, title_from_slug(cycle), "cycle", cycle)
grade_key = f"{cycle}/{grade}"
grade_node = append_tree_child(cycle_node, grade_key, grade.upper(), "grade", grade_key)
subject_key = f"{grade_key}/{subject}"
subject_node = append_tree_child(grade_node, subject_key, title_from_slug(subject), "subject", subject_key)
parent = subject_node
current_path = f"{cycle}/{subject}/{grade}"
for theme_slug in theme_parts:
current_path = f"{current_path}/{theme_slug}"
parent = append_tree_child(parent, current_path, title_from_slug(theme_slug), "theme", current_path)
lesson_node = append_tree_child(parent, lesson["id"], lesson["title"], "lesson", lesson["id"])
lesson_node["status"] = collect_lesson_status(lesson)
lesson_node["review"] = reviews.get(lesson["id"], {})
lesson_node["assets"] = lesson.get("assets") or []
for asset in lesson.get("assets") or []:
asset_key = asset["path"]
asset_node = append_tree_child(lesson_node, asset_key, asset["title"], "fiche", asset_key)
asset_node["url"] = asset.get("url")
asset_node["review"] = reviews.get(asset_key, {})
for section in asset.get("sections") or []:
section_key = f"{asset_key}#{section.get('context_key') or section.get('index')}"
section_node = append_tree_child(
asset_node,
section_key,
section.get("title") or section_key,
"card",
section_key,
)
section_node["url"] = section.get("url")
section_node["review"] = reviews.get(section_key, {})
return root
def update_program_review(node_key: str, status: str, comment: str, reviewer: str) -> dict:
state = load_review_state()
state[node_key] = {
"status": status,
"comment": comment,
"reviewer": reviewer,
"updated_at": datetime.utcnow().isoformat(timespec="seconds") + "Z",
}
save_review_state(state)
return state[node_key]

View File

@@ -130,6 +130,12 @@ class ProgramLessonListResponse(BaseModel):
lessons: List[ProgramLesson]
class ProgramReviewRequest(BaseModel):
node_key: str = Field(..., min_length=1)
status: str = "needs_changes"
comment: str = ""
class StudentProgramAssignRequest(BaseModel):
lesson_id: str = Field(..., min_length=1)

View File

@@ -0,0 +1,47 @@
# 01 - Lire et ecrire une fraction simple
## Objectif eleve
Lire, dire et ecrire une fraction simple en comprenant le role du numerateur et du denominateur.
## Message central
Dans une fraction, le denominateur dit en combien de parts egales on partage l'unite. Le numerateur dit combien de parts on prend.
Exemple : `3/4` se lit `trois quarts`. L'unite est partagee en `4` parts egales, on en prend `3`.
## Contenu de cours
- Une fraction s'ecrit avec deux nombres separes par une barre.
- Le nombre du bas est le denominateur.
- Le nombre du haut est le numerateur.
- Les parts doivent etre egales pour que la fraction soit correcte.
## Exemples resolus
| Fraction | Lecture | Sens |
| --- | --- | --- |
| `1/2` | un demi | 1 part sur 2 parts egales |
| `3/4` | trois quarts | 3 parts sur 4 parts egales |
| `5/8` | cinq huitiemes | 5 parts sur 8 parts egales |
## Piste visuelle
Une fiche avec :
- une fraction grand format `3/4` ;
- une etiquette `numerateur : parts prises` ;
- une etiquette `denominateur : parts egales dans l'unite` ;
- un rectangle partage en quatre parts, dont trois coloriees.
## Contexte dynamique par card plus tard
Le modele devra toujours rappeler quelle est l'unite avant d'expliquer le numerateur et le denominateur.
## Variante exercice plus tard
Demander :
- Lis `2/5`.
- Ecris en fraction : `quatre sixiemes`.
- Dans `7/10`, quel est le denominateur ?

View File

@@ -0,0 +1,48 @@
# 02 - Representer une fraction comme partage
## Objectif eleve
Representer une fraction en partageant une unite en parts egales.
## Message central
Pour representer une fraction, on partage d'abord l'unite en parts egales, puis on colorie le nombre de parts demande.
Exemple : pour `2/3`, je partage l'unite en `3` parts egales et j'en colorie `2`.
## Contenu de cours
- L'unite peut etre une bande, un disque, un carre ou une collection.
- Les parts doivent avoir la meme taille.
- Le denominateur indique le nombre total de parts egales.
- Le numerateur indique le nombre de parts prises.
## Exemples resolus
| Fraction | Representation attendue |
| --- | --- |
| `1/4` | 1 part coloriee sur 4 parts egales |
| `3/5` | 3 parts coloriees sur 5 parts egales |
| `6/10` | 6 parts coloriees sur 10 parts egales |
## Piste visuelle
Une fiche avec trois representations cote a cote :
- bande partagee ;
- disque partage ;
- collection d'objets.
Chaque representation montre la meme idee : parts egales et parts prises.
## Contexte dynamique par card plus tard
La card doit expliciter : `je choisis l'unite`, `je partage en parts egales`, `je prends les parts`.
## Variante exercice plus tard
Proposer une figure partagee et demander :
- Quelle fraction est coloriee ?
- Colorie `3/8` de la bande.
- La representation est-elle correcte si les parts ne sont pas egales ?

View File

@@ -0,0 +1,40 @@
# 03 - Placer une fraction sur une demi-droite graduee
## Objectif eleve
Lire et placer une fraction sur une demi-droite graduee.
## Message central
Sur une demi-droite graduee, l'intervalle entre `0` et `1` represente une unite. Pour placer `3/4`, on partage cette unite en `4` parts egales et on avance de `3` parts.
## Contenu de cours
- On repere d'abord les entiers `0`, `1`, `2`, etc.
- Chaque unite doit etre partagee en parts egales.
- Le denominateur indique le nombre de parts dans chaque unite.
- Le numerateur indique le nombre de parts depuis `0`, ou depuis le dernier entier si la fraction est superieure a `1`.
## Exemples resolus
| Fraction | Placement |
| --- | --- |
| `1/2` | au milieu entre `0` et `1` |
| `3/4` | troisieme graduation si l'unite est partagee en 4 |
| `5/4` | une unite et un quart, donc juste apres `1` |
## Piste visuelle
Une demi-droite de `0` a `2`, avec chaque unite partagee en quarts. Les points `1/4`, `3/4` et `5/4` sont marques.
## Contexte dynamique par card plus tard
La card doit commencer par verifier la taille de l'unite et le nombre de graduations par unite.
## Variante exercice plus tard
Demander :
- Place `2/3` sur une demi-droite de `0` a `1`.
- Lis la fraction indiquee par le point.
- Explique pourquoi `5/4` est apres `1`.

View File

@@ -0,0 +1,41 @@
# 04 - Comprendre une fraction superieure a 1
## Objectif eleve
Comprendre, lire et representer une fraction superieure a `1`.
## Message central
Une fraction peut etre plus grande que `1` quand le numerateur est plus grand que le denominateur.
Exemple : `7/4`, c'est `4/4 + 3/4`, donc `1 + 3/4`.
## Contenu de cours
- `4/4` represente une unite entiere.
- Si on a plus de parts que dans une unite, il faut utiliser plusieurs unites.
- Une fraction superieure a `1` peut se decomposer en partie entiere et fraction restante.
## Exemples resolus
| Fraction | Decomposition | Sens |
| --- | --- | --- |
| `5/4` | `4/4 + 1/4` | `1 + 1/4` |
| `7/3` | `6/3 + 1/3` | `2 + 1/3` |
| `9/2` | `8/2 + 1/2` | `4 + 1/2` |
## Piste visuelle
Deux bandes-unites partagees en quarts. Pour `7/4`, la premiere bande est complete et la seconde a `3` quarts colories.
## Contexte dynamique par card plus tard
Le modele devra faire apparaitre l'unite complete avant la partie restante.
## Variante exercice plus tard
Demander :
- Represente `6/5`.
- Complete : `9/4 = 8/4 + ...`.
- Encercle les fractions superieures a `1` : `2/5`, `5/5`, `7/5`.

View File

@@ -0,0 +1,42 @@
# 05 - Comparer des fractions simples
## Objectif eleve
Comparer des fractions simples en s'appuyant sur leur representation et sur le role du denominateur.
## Message central
Pour comparer deux fractions, il faut regarder l'unite et les parts. Quand le denominateur est le meme, la fraction qui a le plus grand numerateur est la plus grande.
Exemple : `3/8 > 2/8`, car on prend plus de parts de meme taille.
## Contenu de cours
- On compare toujours des fractions de la meme unite.
- A denominateur egal, les parts ont la meme taille.
- A numerateur egal, plus le denominateur est grand, plus les parts sont petites.
- Une representation peut aider quand les denominateurs sont differents.
## Exemples resolus
| Comparaison | Resultat | Pourquoi |
| --- | --- | --- |
| `3/5` et `4/5` | `3/5 < 4/5` | memes parts, on en prend moins |
| `1/2` et `1/4` | `1/2 > 1/4` | une moitie est plus grande qu'un quart |
| `5/6` et `6/6` | `5/6 < 6/6` | `6/6` vaut une unite |
## Piste visuelle
Deux bandes de meme longueur, partagees et coloriees. Une alerte visuelle indique : `meme unite obligatoire`.
## Contexte dynamique par card plus tard
La card doit demander : `les denominateurs sont-ils identiques ?`, puis choisir la strategie.
## Variante exercice plus tard
Demander :
- Complete avec `<`, `>` ou `=` : `2/7 ... 5/7`.
- Choisis la plus grande fraction : `1/3` ou `1/6`.
- Explique avec un dessin.

View File

@@ -0,0 +1,41 @@
# 06 - Encadrer une fraction entre deux entiers
## Objectif eleve
Encadrer une fraction entre deux nombres entiers consecutifs.
## Message central
Pour encadrer une fraction, on cherche combien d'unites entieres elle contient.
Exemple : `7/3` est entre `2` et `3`, car `6/3 = 2` et `9/3 = 3`.
## Contenu de cours
- Une unite entiere correspond a une fraction dont le numerateur est egal au denominateur : `3/3 = 1`.
- Deux unites correspondent a `6/3` si l'unite est partagee en tiers.
- On peut utiliser une demi-droite graduee pour voir entre quels entiers se trouve la fraction.
## Exemples resolus
| Fraction | Encadrement | Explication |
| --- | --- | --- |
| `5/4` | `1 < 5/4 < 2` | `4/4 = 1` et `8/4 = 2` |
| `8/3` | `2 < 8/3 < 3` | `6/3 = 2` et `9/3 = 3` |
| `11/5` | `2 < 11/5 < 3` | `10/5 = 2` et `15/5 = 3` |
## Piste visuelle
Une demi-droite de `0` a `3`, partagee selon le denominateur, avec la fraction placee entre deux entiers.
## Contexte dynamique par card plus tard
La card doit montrer les fractions equivalentes aux entiers voisins avant de conclure.
## Variante exercice plus tard
Demander :
- Encadre `9/4` entre deux entiers.
- Place `13/6` puis complete : `... < 13/6 < ...`.
- Explique pourquoi `4/4` n'est pas entre `0` et `1`, mais egal a `1`.

View File

@@ -0,0 +1,42 @@
# 07 - Additionner ou soustraire des fractions simples
## Objectif eleve
Additionner ou soustraire des fractions de meme denominateur.
## Message central
Quand les denominateurs sont les memes, les parts ont la meme taille. On additionne ou on soustrait seulement les numerateurs.
Exemple : `2/7 + 3/7 = 5/7`.
## Contenu de cours
- Le denominateur ne change pas si les parts ont la meme taille.
- On ajoute les parts prises pour une addition.
- On retire des parts prises pour une soustraction.
- Il faut verifier que les denominateurs sont identiques avant de calculer.
## Exemples resolus
| Calcul | Resultat | Pourquoi |
| --- | --- | --- |
| `1/5 + 2/5` | `3/5` | 1 part + 2 parts = 3 parts |
| `6/8 - 2/8` | `4/8` | 6 parts - 2 parts = 4 parts |
| `3/4 + 2/4` | `5/4` | le resultat depasse 1 |
## Piste visuelle
Une bande partagee en parts egales. Les parts ajoutees ont deux couleurs, puis le total est affiche sous forme de fraction.
## Contexte dynamique par card plus tard
La card doit verifier d'abord : `les denominateurs sont-ils les memes ?`
## Variante exercice plus tard
Demander :
- Calcule `3/10 + 4/10`.
- Calcule `7/9 - 2/9`.
- Represente `3/4 + 2/4` avec deux bandes si besoin.

View File

@@ -0,0 +1,42 @@
# 08 - Determiner une fraction d'une quantite
## Objectif eleve
Calculer une fraction simple d'une quantite.
## Message central
Pour trouver une fraction d'une quantite, on partage d'abord la quantite selon le denominateur, puis on prend le nombre de parts indique par le numerateur.
Exemple : `3/4` de `20`, c'est `20 ÷ 4 = 5`, puis `5 × 3 = 15`.
## Contenu de cours
- Le denominateur indique en combien de groupes egaux on partage.
- Le numerateur indique combien de groupes on prend.
- Il est souvent plus simple de calculer d'abord une part.
- On peut representer la quantite par une collection ou une barre.
## Exemples resolus
| Situation | Calcul | Resultat |
| --- | --- | --- |
| `1/2` de `18` | `18 ÷ 2` | `9` |
| `3/4` de `20` | `20 ÷ 4 = 5`, puis `5 × 3` | `15` |
| `2/5` de `30` | `30 ÷ 5 = 6`, puis `6 × 2` | `12` |
## Piste visuelle
Une barre representant `20`, partagee en `4` parts egales de `5`, puis `3` parts coloriees.
## Contexte dynamique par card plus tard
La card doit isoler les deux gestes : `je partage` puis `je prends`.
## Variante exercice plus tard
Demander :
- Calcule `1/3` de `24`.
- Calcule `2/5` de `40`.
- Dans une classe de `28` eleves, `3/4` participent a un atelier. Combien d'eleves participent ?

View File

@@ -0,0 +1,131 @@
# CM1 - Fractions
Source principale : `pdf_collecteur/state/synthese_cycle3_cm1_mathematiques.md`
Domaine : Nombres, calcul et resolution de problemes
Sous-theme : Fractions
Niveau : CM1
## Perimetre
Le travail sur les fractions commence des la periode 1 et se poursuit toute l'annee. Les fractions sont abordees comme partage, mesure, nombre sur une demi-droite graduee et operateur unitaire.
Points de cadrage :
- fractions superieures a `1` ;
- denominateurs inferieurs ou egaux a `20`, sauf fractions decimales jusqu'aux centiemes ;
- fractions decimales preparees pour l'introduction des nombres decimaux.
## Micro-competences prevues
1. `01_lire_ecrire_fraction_simple.md` : lire et ecrire une fraction simple.
2. `02_representer_fraction_partage.md` : representer une fraction comme partage.
3. `03_fraction_sur_demi_droite_graduee.md` : placer et lire une fraction sur une demi-droite graduee.
4. `04_fraction_superieure_a_un.md` : comprendre et representer une fraction superieure a `1`.
5. `05_comparer_fractions_simples.md` : comparer des fractions simples avec appui visuel.
6. `06_encadrer_fraction_entre_entiers.md` : encadrer une fraction entre deux entiers.
7. `07_additionner_soustraire_fractions_simples.md` : additionner ou soustraire des fractions de meme denominateur.
8. `08_fraction_d_une_quantite.md` : determiner une fraction d'une quantite.
Statut Phase 2A : les 8 micro-fiches Markdown sont generees et pretes pour relecture.
## Futures sorties
- Fiches de lecon Markdown et SVG.
- Contextes dynamiques par card : sens de la fraction, unite, numerateur, denominateur, representation.
- Exercices textuels : lecture, representation, placement, comparaison, calcul simple.
- SVG exercices : bandes, disques, droites graduees, collections.
- Kit adaptatif conseille : les erreurs de choix d'unite et de denominateur sont frequentes.
## Prochaine validation
Avant les SVG et les contextes dynamiques, relire :
- la justesse mathematique ;
- la granularite une competence par fiche ;
- le niveau CM1 ;
- la coherence des futures pistes visuelles.
## SVG generes
Phase 3A : 8 SVG de lecon generes dans `svg/`.
- `svg/01_lire_ecrire_fraction_simple.svg`
- `svg/02_representer_fraction_partage.svg`
- `svg/03_fraction_sur_demi_droite_graduee.svg`
- `svg/04_fraction_superieure_a_un.svg`
- `svg/05_comparer_fractions_simples.svg`
- `svg/06_encadrer_fraction_entre_entiers.svg`
- `svg/07_additionner_soustraire_fractions_simples.svg`
- `svg/08_fraction_d_une_quantite.svg`
Statut : brouillons visuels propres, XML valides, a relire avant validation finale.
## Validation SVG
Phase 3B : les 8 SVG de lecon sont valides par l'utilisateur le `2026-05-05`.
Trace : `VALIDATION_PHASE_3B.md`
## Contextes dynamiques generes
Phase 4A : 24 contextes dynamiques par card generes dans `card_contexts/`.
Organisation :
- `card_contexts/01_lire_ecrire_fraction_simple/` : 4 cards.
- `card_contexts/02_representer_fraction_partage/` : 4 cards.
- `card_contexts/03_fraction_sur_demi_droite_graduee/` : 2 cards.
- `card_contexts/04_fraction_superieure_a_un/` : 3 cards.
- `card_contexts/05_comparer_fractions_simples/` : 3 cards.
- `card_contexts/06_encadrer_fraction_entre_entiers/` : 2 cards.
- `card_contexts/07_additionner_soustraire_fractions_simples/` : 3 cards.
- `card_contexts/08_fraction_d_une_quantite/` : 3 cards.
Statut : contextes initiaux prets pour relecture Phase 4B.
## Validation contextes dynamiques
Phase 4B : les 24 contextes dynamiques par card sont valides par l'utilisateur le `2026-05-05`.
Trace : `VALIDATION_PHASE_4B.md`
## Exercices textuels generes
Phase 5A : 8 fichiers d'exercices textuels generes dans `exercices/`, soit `32` exercices au total.
Organisation :
- `exercices/01_lire_ecrire_fraction_simple/exercices.md`
- `exercices/02_representer_fraction_partage/exercices.md`
- `exercices/03_fraction_sur_demi_droite_graduee/exercices.md`
- `exercices/04_fraction_superieure_a_un/exercices.md`
- `exercices/05_comparer_fractions_simples/exercices.md`
- `exercices/06_encadrer_fraction_entre_entiers/exercices.md`
- `exercices/07_additionner_soustraire_fractions_simples/exercices.md`
- `exercices/08_fraction_d_une_quantite/exercices.md`
Statut : exercices initiaux prets pour relecture Phase 5B.
## Validation exercices textuels
Phase 5B : les 8 fichiers d'exercices textuels sont valides par l'utilisateur le `2026-05-05`.
Trace : `VALIDATION_PHASE_5B.md`
## SVG exercices generes
Phase 6A : 8 planches SVG d'exercices generees dans `exercices_svg/`.
Organisation :
- `exercices_svg/01_lire_ecrire_fraction_simple.svg`
- `exercices_svg/02_representer_fraction_partage.svg`
- `exercices_svg/03_fraction_sur_demi_droite_graduee.svg`
- `exercices_svg/04_fraction_superieure_a_un.svg`
- `exercices_svg/05_comparer_fractions_simples.svg`
- `exercices_svg/06_encadrer_fraction_entre_entiers.svg`
- `exercices_svg/07_additionner_soustraire_fractions_simples.svg`
- `exercices_svg/08_fraction_d_une_quantite.svg`
Statut : SVG exercices initiaux prets pour relecture Phase 6B.

View File

@@ -0,0 +1,32 @@
# Validation Phase 2B - CM1 mathematiques - Fractions
Date : `2026-05-03`
## Decision
Les 8 micro-fiches Markdown du sous-theme `01B_fractions` sont validees.
La production peut passer a la phase suivante : SVG de lecon, puis contextes dynamiques par card.
## Fiches validees
1. `01_lire_ecrire_fraction_simple.md`
2. `02_representer_fraction_partage.md`
3. `03_fraction_sur_demi_droite_graduee.md`
4. `04_fraction_superieure_a_un.md`
5. `05_comparer_fractions_simples.md`
6. `06_encadrer_fraction_entre_entiers.md`
7. `07_additionner_soustraire_fractions_simples.md`
8. `08_fraction_d_une_quantite.md`
## Regles pour la Phase 3A
- Une fiche SVG = une competence.
- Le SVG doit rester lisible pour un eleve de CM1.
- Chaque visuel doit rendre explicite l'unite, les parts egales, le numerateur et le denominateur quand c'est pertinent.
- Ne pas integrer de professeur dans la fiche.
- Preparer mentalement les futures variantes exercice sans les produire dans cette phase.
## Prochain lot
`3A - SVG lecon CM1 mathematiques / 01B_fractions`

View File

@@ -0,0 +1,28 @@
# Validation Phase 3B - CM1 mathematiques - Fractions
Date : `2026-05-05`
## Decision
Les 8 SVG de lecon du sous-theme `01B_fractions` sont valides par l'utilisateur.
La production peut passer a la phase suivante : contextes dynamiques par card.
## SVG valides
1. `svg/01_lire_ecrire_fraction_simple.svg`
2. `svg/02_representer_fraction_partage.svg`
3. `svg/03_fraction_sur_demi_droite_graduee.svg`
4. `svg/04_fraction_superieure_a_un.svg`
5. `svg/05_comparer_fractions_simples.svg`
6. `svg/06_encadrer_fraction_entre_entiers.svg`
7. `svg/07_additionner_soustraire_fractions_simples.svg`
8. `svg/08_fraction_d_une_quantite.svg`
## Regles pour la Phase 4A
- Un contexte doit correspondre a une card visible.
- Professeur TOP doit parler uniquement des nombres et objets affiches sur la card.
- Le contexte doit contenir une consigne orale courte, des limites et un critere de passage.
- Les mots `unite`, `parts egales`, `numerateur` et `denominateur` doivent etre utilises quand ils sont pertinents.

View File

@@ -0,0 +1,28 @@
# Validation Phase 4B - CM1 mathematiques - Fractions
Date : `2026-05-05`
## Decision
Les 24 contextes dynamiques par card du sous-theme `01B_fractions` sont valides par l'utilisateur.
La production peut passer a la phase suivante : exercices textuels.
## Contextes valides
- `card_contexts/01_lire_ecrire_fraction_simple/` : 4 cards.
- `card_contexts/02_representer_fraction_partage/` : 4 cards.
- `card_contexts/03_fraction_sur_demi_droite_graduee/` : 2 cards.
- `card_contexts/04_fraction_superieure_a_un/` : 3 cards.
- `card_contexts/05_comparer_fractions_simples/` : 3 cards.
- `card_contexts/06_encadrer_fraction_entre_entiers/` : 2 cards.
- `card_contexts/07_additionner_soustraire_fractions_simples/` : 3 cards.
- `card_contexts/08_fraction_d_une_quantite/` : 3 cards.
## Regles pour la Phase 5A
- Produire des exercices textuels progressifs, sans SVG dans cette phase.
- Garder le niveau CM1 et les denominateurs simples.
- Donner les reponses attendues pour permettre une future correction automatique.
- Noter les erreurs observables utiles a Professeur TOP.

View File

@@ -0,0 +1,28 @@
# Validation Phase 5B - CM1 mathematiques - Fractions
Date : `2026-05-05`
## Decision
Les 8 fichiers d'exercices textuels du sous-theme `01B_fractions` sont valides par l'utilisateur.
La production peut passer a la phase suivante : SVG des exercices.
## Exercices valides
- `exercices/01_lire_ecrire_fraction_simple/exercices.md`
- `exercices/02_representer_fraction_partage/exercices.md`
- `exercices/03_fraction_sur_demi_droite_graduee/exercices.md`
- `exercices/04_fraction_superieure_a_un/exercices.md`
- `exercices/05_comparer_fractions_simples/exercices.md`
- `exercices/06_encadrer_fraction_entre_entiers/exercices.md`
- `exercices/07_additionner_soustraire_fractions_simples/exercices.md`
- `exercices/08_fraction_d_une_quantite/exercices.md`
## Regles pour la Phase 6A
- Produire une planche SVG d'exercices par micro-competence.
- Ne pas integrer Professeur TOP dans les planches.
- Garder des zones de reponse visibles mais non corrigees.
- Placer les corriges uniquement dans les fichiers Markdown, pas dans les SVG d'exercice.

View File

@@ -0,0 +1,23 @@
# Fiche 1 - Card 1 - La fraction
Cette card presente la fraction `3/4` sous forme verticale.
Idee a enseigner :
- `3/4` s'ecrit avec un nombre en haut, une barre, puis un nombre en bas.
- Le nombre du haut s'appelle le numerateur.
- Le nombre du bas s'appelle le denominateur.
Nombres autorises sur cette card :
- `3/4` uniquement.
Consigne orale courte pour Professeur TOP :
Montre que la fraction affichee est `3/4`. Explique que le `3` est en haut et le `4` en bas. Demande a l'eleve de montrer ou de dire quel nombre est en haut.
Limites :
- Ne parle pas encore du rectangle partage.
- Ne donne pas d'autre fraction.
- Ne lance pas encore la lecture `trois quarts` sauf si l'eleve la propose.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il reconnait que `3` est en haut et `4` en bas, ou s'il dit qu'il a compris cette ecriture.

View File

@@ -0,0 +1,25 @@
# Fiche 1 - Card 2 - Ce que ca dit
Cette card explique le sens de `3/4`.
Idee a enseigner :
- Le `3` indique les parts prises.
- Le `4` indique les parts egales dans l'unite.
- `3/4` se lit `trois quarts`.
Nombres et vocabulaire autorises :
- `3 parts prises` ;
- `4 parts egales` ;
- `trois quarts`.
Consigne orale courte pour Professeur TOP :
Explique que `3/4` veut dire `3 parts prises sur 4 parts egales`. Fais lire la fraction `trois quarts`, puis demande a l'eleve de repeter.
Limites :
- Ne change pas de fraction.
- Ne parle pas encore de fractions plus grandes que `1`.
- Ne donne pas de calcul.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il lit `3/4` comme `trois quarts` ou s'il explique que le `3` indique les parts prises.

View File

@@ -0,0 +1,20 @@
# Fiche 1 - Card 3 - L'unite partagee
Cette card montre une unite partagee en `4` parts egales, dont `3` sont coloriees.
Idee a enseigner :
- L'unite est le rectangle entier.
- Le rectangle est coupe en `4` parts egales.
- `3` parts sont coloriees : cela represente `3/4`.
Consigne orale courte pour Professeur TOP :
Commence par nommer l'unite : le rectangle entier. Dis qu'il est partage en `4` parts egales et que `3` parts sont coloriees. Demande a l'eleve combien de parts sont coloriees.
Limites :
- Ne donne pas d'autre dessin.
- Ne compare pas avec une autre fraction.
- Ne parle pas des fractions decimales.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il repond `3`, ou s'il dit que `3` parts sur `4` sont coloriees.

View File

@@ -0,0 +1,19 @@
# Fiche 1 - Card 4 - A retenir
Cette card formule la regle a memoriser.
Idee a enseigner :
- Le denominateur indique le partage.
- Le numerateur indique les parts prises.
- Il faut toujours penser a l'unite avant de lire la fraction.
Consigne orale courte pour Professeur TOP :
Resume en une phrase : le denominateur dit en combien de parts egales on partage l'unite, le numerateur dit combien de parts on prend. Demande a l'eleve de redire le role du denominateur.
Limites :
- Ne commence pas une nouvelle fiche.
- Ne donne pas d'exercice long.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit que le denominateur indique le partage, ou s'il dit clairement qu'il a compris.

View File

@@ -0,0 +1,19 @@
# Fiche 2 - Card 1 - Bande : 3/5
Cette card represente `3/5` avec une bande.
Idee a enseigner :
- L'unite est la bande entiere.
- Elle est partagee en `5` parts egales.
- `3` parts sont coloriees.
Consigne orale courte pour Professeur TOP :
Dis que la bande entiere est l'unite. Explique qu'elle est coupee en `5` parts egales et que `3` parts sont coloriees. Demande quelle fraction est representee.
Limites :
- Ne parle pas encore du disque ni de la collection.
- Ne change pas le nombre de parts.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il repond `3/5` ou s'il dit `3 parts sur 5`.

View File

@@ -0,0 +1,19 @@
# Fiche 2 - Card 2 - Disque : 1/4
Cette card represente `1/4` avec un disque.
Idee a enseigner :
- L'unite est le disque entier.
- Le disque est partage en `4` parts egales.
- Une seule part est coloriee.
Consigne orale courte pour Professeur TOP :
Nomme l'unite : le disque entier. Fais compter les `4` parts egales, puis la part coloriee. Demande a l'eleve de lire la fraction `1/4`.
Limites :
- Ne parle pas de pourcentage.
- Ne compare pas avec la bande precedente sauf pour rappeler que l'unite peut changer de forme.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il lit `1/4` comme `un quart` ou s'il reconnait une part sur quatre.

View File

@@ -0,0 +1,20 @@
# Fiche 2 - Card 3 - Collection : 6/10
Cette card represente `6/10` avec une collection d'objets.
Idee a enseigner :
- L'unite est toute la collection de `10` objets.
- `6` objets sont choisis.
- La fraction representee est `6/10`.
Consigne orale courte pour Professeur TOP :
Explique que l'unite n'est pas une forme ici, mais toute la collection. Fais compter mentalement `10` objets au total, puis `6` objets choisis. Demande quelle fraction cela donne.
Limites :
- Ne simplifie pas `6/10`.
- Ne transforme pas en nombre decimal.
- Ne change pas la collection.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit `6/10` ou `6 objets sur 10`.

View File

@@ -0,0 +1,19 @@
# Fiche 2 - Card 4 - A retenir
Cette card rappelle la condition essentielle d'une representation.
Idee a enseigner :
- Une fraction a besoin d'une unite claire.
- Les parts doivent etre egales.
- On partage d'abord, puis on prend ou on colorie.
Consigne orale courte pour Professeur TOP :
Resume les trois gestes : je choisis l'unite, je partage en parts egales, je prends les parts demandees. Demande a l'eleve lequel de ces gestes vient en premier.
Limites :
- Ne donne pas de nouvel exemple numerique.
- Ne commence pas encore les exercices.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit qu'il faut d'abord choisir l'unite ou partager en parts egales.

View File

@@ -0,0 +1,20 @@
# Fiche 3 - Card 1 - Exemple : placer 5/4
Cette card montre la fraction `5/4` sur une demi-droite graduee de `0` a `2`.
Idee a enseigner :
- L'intervalle de `0` a `1` est une unite.
- Chaque unite est partagee en `4` parts egales.
- `5/4` correspond a `5` quarts depuis `0`, donc le point est juste apres `1`.
Consigne orale courte pour Professeur TOP :
Commence par faire reperer l'unite entre `0` et `1`. Dis que le denominateur `4` impose `4` parts egales par unite. Compte ensuite `5` quarts depuis `0` et montre que `5/4` est juste apres `1`.
Limites :
- Ne place pas d'autre fraction.
- Ne parle pas de nombres decimaux.
- Ne saute pas l'etape de l'unite.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il explique que `5/4` est apres `1`, ou s'il dit que chaque unite est partagee en `4`.

View File

@@ -0,0 +1,19 @@
# Fiche 3 - Card 2 - A retenir
Cette card fixe la regle pour une demi-droite graduee.
Idee a enseigner :
- L'intervalle de `0` a `1` represente l'unite.
- On partage cette unite en parts egales selon le denominateur.
- Le numerateur indique combien de parts on avance.
Consigne orale courte pour Professeur TOP :
Resume la methode en trois temps : je regarde l'unite, je la partage selon le denominateur, puis j'avance selon le numerateur. Demande a l'eleve ce que represente l'intervalle de `0` a `1`.
Limites :
- Ne donne pas un nouvel exercice.
- Ne parle pas de graduations irregulieres.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit que de `0` a `1`, c'est une unite.

View File

@@ -0,0 +1,20 @@
# Fiche 4 - Card 1 - Exemple : 7/4
Cette card represente `7/4` avec deux bandes-unites partagees en quarts.
Idee a enseigner :
- Chaque bande entiere represente une unite.
- Une unite complete vaut `4/4`.
- Pour montrer `7/4`, on colorie `4/4`, puis encore `3/4`.
Consigne orale courte pour Professeur TOP :
Fais d'abord apparaitre l'unite complete : `4/4`. Puis montre qu'il reste `3` quarts a colorier pour arriver a `7/4`. Demande a l'eleve combien de quarts sont colories dans la premiere bande.
Limites :
- Ne donne pas d'autre fraction superieure a `1`.
- Ne transforme pas en nombre decimal.
- Ne parle pas encore de division posee.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit que la premiere bande vaut `4/4` ou une unite.

View File

@@ -0,0 +1,20 @@
# Fiche 4 - Card 2 - Je decompose
Cette card ecrit la decomposition de `7/4`.
Idee a enseigner :
- `7/4 = 4/4 + 3/4`.
- Comme `4/4 = 1`, alors `7/4 = 1 + 3/4`.
- La partie entiere apparait quand une unite est complete.
Consigne orale courte pour Professeur TOP :
Lis la decomposition lentement : `7/4`, c'est `4/4 + 3/4`, donc `1 + 3/4`. Demande a l'eleve pourquoi `4/4` vaut `1`.
Limites :
- Ne simplifie pas davantage.
- Ne donne pas d'autre decomposition.
- Reste sur `7/4`.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit que `4/4` fait une unite ou s'il reconnait `1 + 3/4`.

View File

@@ -0,0 +1,19 @@
# Fiche 4 - Card 3 - A retenir
Cette card rappelle qu'une fraction peut depasser `1`.
Idee a enseigner :
- Une fraction est plus grande que `1` quand il faut plus d'une unite.
- C'est souvent le cas quand le numerateur est plus grand que le denominateur.
- On utilise alors plusieurs unites.
Consigne orale courte pour Professeur TOP :
Explique qu'une fraction peut etre plus grande que `1`. Dis que dans ce cas, une seule unite ne suffit pas. Demande a l'eleve comment on le voit avec `7/4`.
Limites :
- Ne generalise pas a toutes les fractions impropres.
- Ne donne pas de calcul nouveau.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit que `7/4` depasse une unite ou qu'il faut plusieurs unites.

View File

@@ -0,0 +1,19 @@
# Fiche 5 - Card 1 - Meme denominateur
Cette card compare `3/5` et `4/5`.
Idee a enseigner :
- Les deux fractions ont le meme denominateur : les parts ont la meme taille.
- `4/5` a une part coloriee de plus que `3/5`.
- Donc `3/5 < 4/5`.
Consigne orale courte pour Professeur TOP :
Commence par demander si les denominateurs sont identiques. Fais observer que les deux bandes sont partagees en `5`. Explique ensuite que `4` parts prises, c'est plus que `3` parts prises.
Limites :
- Ne parle pas encore du cas `1/2` et `1/4`.
- Ne compare pas avec des decimaux.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit que `4/5` est plus grand que `3/5`, ou que les denominateurs sont les memes.

View File

@@ -0,0 +1,20 @@
# Fiche 5 - Card 2 - Meme numerateur
Cette card compare `1/2` et `1/4`.
Idee a enseigner :
- Les deux fractions prennent une seule part.
- Mais une moitie est plus grande qu'un quart.
- Quand on partage la meme unite en plus de parts, chaque part est plus petite.
Consigne orale courte pour Professeur TOP :
Explique que le numerateur est le meme : on prend `1` part. Puis montre que les parts n'ont pas la meme taille : une part sur `2` est plus grande qu'une part sur `4`. Demande quelle fraction est la plus grande.
Limites :
- Ne transforme pas en `0,5` ou `0,25`.
- Ne donne pas d'autre comparaison.
- Rappelle que l'unite doit etre la meme.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit que `1/2` est plus grand que `1/4`.

View File

@@ -0,0 +1,19 @@
# Fiche 5 - Card 3 - A retenir
Cette card fixe la regle principale de comparaison.
Idee a enseigner :
- A denominateur egal, les parts ont la meme taille.
- Le plus grand numerateur donne la plus grande fraction.
- Avant de comparer, il faut verifier l'unite.
Consigne orale courte pour Professeur TOP :
Resume la regle : si les denominateurs sont egaux, on compare les numerateurs. Demande a l'eleve ce qu'il faut verifier avant de comparer deux fractions.
Limites :
- Ne donne pas un long exercice.
- Ne parle pas de fractions equivalentes.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit qu'il faut comparer les numerateurs quand les denominateurs sont les memes.

View File

@@ -0,0 +1,20 @@
# Fiche 6 - Card 1 - Exemple : 7/3
Cette card encadre `7/3` entre `2` et `3`.
Idee a enseigner :
- En tiers, `6/3 = 2`.
- En tiers, `9/3 = 3`.
- Comme `7/3` est entre `6/3` et `9/3`, alors `2 < 7/3 < 3`.
Consigne orale courte pour Professeur TOP :
Commence par montrer les entiers voisins sous forme de fractions : `6/3 = 2` et `9/3 = 3`. Puis place `7/3` entre les deux. Demande a l'eleve entre quels entiers se trouve `7/3`.
Limites :
- Ne donne pas d'autre fraction.
- Ne parle pas de division euclidienne.
- Ne saute pas les fractions equivalentes aux entiers voisins.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il repond que `7/3` est entre `2` et `3`.

View File

@@ -0,0 +1,19 @@
# Fiche 6 - Card 2 - A retenir
Cette card rappelle la methode d'encadrement.
Idee a enseigner :
- On compare la fraction aux fractions qui valent les entiers voisins.
- Il faut garder le meme denominateur.
- L'encadrement s'ecrit avec deux signes `<`.
Consigne orale courte pour Professeur TOP :
Resume : pour encadrer, je cherche les entiers voisins ecrits avec le meme denominateur. Fais redire l'encadrement affiche : `2 < 7/3 < 3`.
Limites :
- Ne lance pas un nouvel exemple.
- Ne parle pas de notation decimale.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il relit correctement `2 < 7/3 < 3` ou s'il dit qu'il faut chercher les entiers voisins.

View File

@@ -0,0 +1,20 @@
# Fiche 7 - Card 1 - Exemple
Cette card additionne `2/7 + 3/7`.
Idee a enseigner :
- Les denominateurs sont les memes : les parts ont la meme taille.
- On additionne les numerateurs : `2 + 3 = 5`.
- Le denominateur reste `7`.
Consigne orale courte pour Professeur TOP :
Fais d'abord verifier que les denominateurs sont tous les deux `7`. Explique ensuite que l'on ajoute les parts coloriees : `2` parts plus `3` parts font `5` parts, donc `5/7`.
Limites :
- Ne change pas le denominateur.
- Ne simplifie pas la fraction.
- Ne parle pas encore de soustraction.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit que le resultat est `5/7` ou que le denominateur reste `7`.

View File

@@ -0,0 +1,19 @@
# Fiche 7 - Card 2 - La regle
Cette card donne la regle et un exemple de soustraction.
Idee a enseigner :
- On garde le denominateur quand les parts ont la meme taille.
- On ajoute ou on retire seulement les numerateurs.
- Exemple affiche : `6/8 - 2/8 = 4/8`.
Consigne orale courte pour Professeur TOP :
Dis la regle clairement : je garde le denominateur, j'ajoute ou je retire les numerateurs. Lis l'exemple `6/8 - 2/8 = 4/8`, puis demande pourquoi le `8` reste.
Limites :
- Ne reduis pas `4/8`.
- Ne donne pas de calcul avec denominateurs differents.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit que le denominateur reste parce que les parts ont la meme taille.

View File

@@ -0,0 +1,19 @@
# Fiche 7 - Card 3 - A retenir
Cette card rappelle la verification indispensable avant le calcul.
Idee a enseigner :
- Avant de calculer, on verifie les denominateurs.
- S'ils sont identiques, les parts ont la meme taille.
- On calcule alors seulement avec les numerateurs.
Consigne orale courte pour Professeur TOP :
Demande a l'eleve quelle verification il faut faire avant d'additionner ou de soustraire des fractions. Attends l'idee : les denominateurs doivent etre les memes.
Limites :
- Ne donne pas d'algorithme pour denominateurs differents.
- Ne propose pas d'exercice nouveau.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit qu'il faut verifier que les denominateurs sont identiques.

View File

@@ -0,0 +1,20 @@
# Fiche 8 - Card 1 - Exemple : 3/4 de 20
Cette card montre comment trouver `3/4` de `20`.
Idee a enseigner :
- La quantite `20` est partagee en `4` parts egales.
- Une part vaut `5`.
- On prend `3` parts, donc `15`.
Consigne orale courte pour Professeur TOP :
Separe bien les deux gestes : d'abord je partage `20` en `4` parts, chaque part vaut `5`; ensuite je prends `3` parts, donc `15`. Demande a l'eleve combien vaut une part.
Limites :
- Ne change pas la quantite `20`.
- Ne donne pas d'autre fraction.
- Ne presente pas de formule abstraite avant le partage.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il repond qu'une part vaut `5` ou que `3` parts valent `15`.

View File

@@ -0,0 +1,20 @@
# Fiche 8 - Card 2 - La methode
Cette card formalise le calcul de `3/4` de `20`.
Idee a enseigner :
- On divise par le denominateur : `20 / 4 = 5`.
- On multiplie par le numerateur : `5 x 3 = 15`.
- Le denominateur partage, le numerateur dit combien prendre.
Consigne orale courte pour Professeur TOP :
Lis les deux calculs dans l'ordre : `20 / 4 = 5`, puis `5 x 3 = 15`. Demande a l'eleve quel nombre sert a partager.
Limites :
- Ne parle pas encore de pourcentage.
- Ne donne pas de probleme texte.
- Reste sur `3/4` de `20`.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit que le `4` sert a partager ou que le resultat est `15`.

View File

@@ -0,0 +1,19 @@
# Fiche 8 - Card 3 - A retenir
Cette card rappelle la methode generale pour trouver une fraction d'une quantite.
Idee a enseigner :
- Pour trouver `3/4` d'une quantite, on divise par `4`.
- Puis on multiplie par `3`.
- Plus generalement : je partage, puis je prends.
Consigne orale courte pour Professeur TOP :
Resume avec les mots de la card : pour trouver `3/4` d'une quantite, je divise par `4`, puis je multiplie par `3`. Demande a l'eleve de redire les deux gestes : partager puis prendre.
Limites :
- Ne donne pas de nouvel exemple.
- Ne parle pas de fractions plus complexes.
Critere pour passer a la card suivante :
L'eleve peut passer a la suite s'il dit `je partage puis je prends`, ou s'il dit `diviser par 4 puis multiplier par 3`.

View File

@@ -0,0 +1,16 @@
# Contextes dynamiques - CM1 - Fractions
Ce dossier contient les textes pedagogiques associes aux cards detectees dans les SVG de lecon du sous-theme `01B_fractions`.
Convention de nommage attendue par l'application :
- `card_contexts/<nom_du_svg>/Fiche{numero_fiche}Card{numero_card}.md`
Objectif :
- guider Professeur TOP pour expliquer uniquement la card affichee ;
- eviter que le modele reparte sur toute la fiche ou sur une autre notion ;
- fournir un critere simple pour avancer a la card suivante.
Statut Phase 4A : contextes initiaux generes, a relire avant exercices.

View File

@@ -0,0 +1,64 @@
# Exercices - Lire et ecrire une fraction simple
## Intention
Verifier que l'eleve sait lire une fraction, reconnaitre numerateur et denominateur, puis ecrire une fraction dictee.
## Exercice 1 - Lire les fractions
Lis les fractions suivantes :
- `1/2`
- `3/4`
- `5/8`
- `7/10`
Reponses attendues :
- `un demi`
- `trois quarts`
- `cinq huitiemes`
- `sept dixiemes`
## Exercice 2 - Nommer les nombres
Pour chaque fraction, indique le numerateur et le denominateur :
- `2/5`
- `4/9`
- `6/7`
Reponses attendues :
- `2/5` : numerateur `2`, denominateur `5`
- `4/9` : numerateur `4`, denominateur `9`
- `6/7` : numerateur `6`, denominateur `7`
## Exercice 3 - Ecrire en chiffres
Ecris en fraction :
- deux tiers
- trois cinquiemes
- neuf dixiemes
Reponses attendues :
- `2/3`
- `3/5`
- `9/10`
## Exercice 4 - Expliquer le sens
Explique ce que veut dire `3/4` avec les mots `unite`, `parts egales` et `parts prises`.
Reponse attendue :
- L'unite est partagee en `4` parts egales et on prend `3` parts.
## Observations pour Professeur TOP
- Si l'eleve inverse haut et bas, reprendre numerateur puis denominateur avec `3/4`.
- Si l'eleve lit chiffre par chiffre, refaire lire avec les mots usuels : demi, tiers, quarts.
- Si l'eleve oublie l'unite, revenir a la card `L'unite partagee`.

View File

@@ -0,0 +1,56 @@
# Exercices - Representer une fraction comme partage
## Intention
Verifier que l'eleve sait choisir une unite, la partager en parts egales, puis prendre ou colorier les parts demandees.
## Exercice 1 - Dire la fraction coloriee
Imagine une bande partagee en parts egales. Quelle fraction est coloriee ?
- `2` parts coloriees sur `3`
- `4` parts coloriees sur `5`
- `6` parts coloriees sur `10`
Reponses attendues :
- `2/3`
- `4/5`
- `6/10`
## Exercice 2 - Decrire le dessin a faire
Dis comment representer chaque fraction avec une bande :
- `1/4`
- `3/6`
- `5/8`
Reponses attendues :
- Partager l'unite en `4` parts egales et colorier `1` part.
- Partager l'unite en `6` parts egales et colorier `3` parts.
- Partager l'unite en `8` parts egales et colorier `5` parts.
## Exercice 3 - Verifier les parts egales
Une bande est coupee en `4` morceaux, mais les morceaux n'ont pas la meme taille. Peut-on dire que `2` morceaux colories representent forcement `2/4` ?
Reponse attendue :
- Non, les parts doivent etre egales.
## Exercice 4 - Collection
Dans une collection de `12` jetons, `5` jetons sont rouges. Quelle fraction de la collection est rouge ?
Reponse attendue :
- `5/12`
## Observations pour Professeur TOP
- Si l'eleve donne seulement le nombre de parts coloriees, faire chercher le total.
- Si l'eleve ne nomme pas l'unite, demander : `quelle est toute la quantite ?`
- Si les parts egales sont oubliees, revenir a la regle : une fraction exige des parts egales.

View File

@@ -0,0 +1,44 @@
# Exercices - Placer une fraction sur une demi-droite graduee
## Intention
Verifier que l'eleve sait reperer l'unite, utiliser le denominateur pour graduer, puis avancer selon le numerateur.
## Exercice 1 - Reperer l'unite
Sur une demi-droite, l'intervalle de `0` a `1` est partage en `4` parts egales. Combien vaut chaque petite part ?
Reponse attendue :
- Chaque petite part vaut `1/4`.
## Exercice 2 - Placer une fraction entre 0 et 1
Pour placer `3/4`, combien de petites parts faut-il avancer depuis `0` ?
Reponse attendue :
- Il faut avancer de `3` petites parts.
## Exercice 3 - Lire une fraction placee
L'unite est partagee en `5` parts egales. Un point est place sur la deuxieme petite graduation apres `0`. Quelle fraction indique ce point ?
Reponse attendue :
- `2/5`
## Exercice 4 - Fraction apres 1
L'unite est partagee en quarts. Explique pourquoi `5/4` est juste apres `1`.
Reponse attendue :
- `4/4` vaut `1`, donc `5/4` est un quart apres `1`.
## Observations pour Professeur TOP
- Si l'eleve compte les traits au lieu des intervalles, faire compter les parts entre `0` et `1`.
- Si l'eleve place `5/4` avant `1`, reprendre `4/4 = 1`.
- Si le denominateur est ignore, demander combien de parts egales contient chaque unite.

View File

@@ -0,0 +1,65 @@
# Exercices - Comprendre une fraction superieure a 1
## Intention
Verifier que l'eleve reconnait une fraction plus grande que `1` et sait la decomposer en unite complete et reste.
## Exercice 1 - Reconnaitre
Entoure les fractions superieures a `1` :
- `2/5`
- `5/5`
- `7/5`
- `9/4`
- `3/8`
Reponses attendues :
- `7/5`
- `9/4`
Note : `5/5` est egal a `1`, il n'est pas superieur a `1`.
## Exercice 2 - Completer la decomposition
Complete :
- `5/4 = 4/4 + ...`
- `7/3 = 6/3 + ...`
- `9/2 = 8/2 + ...`
Reponses attendues :
- `5/4 = 4/4 + 1/4`
- `7/3 = 6/3 + 1/3`
- `9/2 = 8/2 + 1/2`
## Exercice 3 - Ecrire avec une partie entiere
Complete :
- `6/5 = 1 + ...`
- `8/3 = 2 + ...`
- `11/4 = 2 + ...`
Reponses attendues :
- `6/5 = 1 + 1/5`
- `8/3 = 2 + 2/3`
- `11/4 = 2 + 3/4`
## Exercice 4 - Expliquer avec l'unite
Explique pourquoi `7/4` est plus grand que `1`.
Reponse attendue :
- Une unite vaut `4/4`. Dans `7/4`, on a `4/4` et encore `3/4`, donc c'est plus que `1`.
## Observations pour Professeur TOP
- Si l'eleve pense que toute fraction est plus petite que `1`, revenir aux bandes multiples.
- Si `denominateur plus grand` devient une regle automatique, faire comparer numerateur et denominateur.
- Si l'eleve oublie le cas egal a `1`, reprendre `5/5 = 1`.

View File

@@ -0,0 +1,62 @@
# Exercices - Comparer des fractions simples
## Intention
Verifier que l'eleve compare d'abord l'unite et les denominateurs, puis choisit une strategie adaptee.
## Exercice 1 - Meme denominateur
Complete avec `<`, `>` ou `=` :
- `2/7 ... 5/7`
- `6/8 ... 3/8`
- `4/9 ... 4/9`
Reponses attendues :
- `2/7 < 5/7`
- `6/8 > 3/8`
- `4/9 = 4/9`
## Exercice 2 - Meme numerateur
Choisis la plus grande fraction :
- `1/2` ou `1/4`
- `2/3` ou `2/5`
- `3/6` ou `3/10`
Reponses attendues :
- `1/2`
- `2/3`
- `3/6`
## Exercice 3 - Comparer a 1
Complete avec `<`, `>` ou `=` :
- `5/6 ... 1`
- `6/6 ... 1`
- `8/6 ... 1`
Reponses attendues :
- `5/6 < 1`
- `6/6 = 1`
- `8/6 > 1`
## Exercice 4 - Justifier
Explique pourquoi `3/5 < 4/5`.
Reponse attendue :
- Les denominateurs sont les memes, donc les parts ont la meme taille. `4` parts, c'est plus que `3` parts.
## Observations pour Professeur TOP
- Si l'eleve compare seulement les denominateurs, revenir a l'unite et a la taille des parts.
- Si l'eleve bloque sur `<` et `>`, accepter une phrase orale avant le symbole.
- Si l'eleve reussit sans justifier, demander quelle strategie il a utilisee.

View File

@@ -0,0 +1,60 @@
# Exercices - Encadrer une fraction entre deux entiers
## Intention
Verifier que l'eleve trouve les entiers voisins d'une fraction superieure a `1`, en gardant le meme denominateur.
## Exercice 1 - Trouver les entiers en fraction
Complete :
- Avec des quarts : `1 = .../4` et `2 = .../4`
- Avec des tiers : `2 = .../3` et `3 = .../3`
- Avec des cinquiemes : `2 = .../5` et `3 = .../5`
Reponses attendues :
- `1 = 4/4` et `2 = 8/4`
- `2 = 6/3` et `3 = 9/3`
- `2 = 10/5` et `3 = 15/5`
## Exercice 2 - Encadrer
Complete :
- `... < 5/4 < ...`
- `... < 8/3 < ...`
- `... < 11/5 < ...`
Reponses attendues :
- `1 < 5/4 < 2`
- `2 < 8/3 < 3`
- `2 < 11/5 < 3`
## Exercice 3 - Choisir l'encadrement correct
Quel encadrement est correct pour `13/6` ?
- `1 < 13/6 < 2`
- `2 < 13/6 < 3`
- `3 < 13/6 < 4`
Reponse attendue :
- `2 < 13/6 < 3`
## Exercice 4 - Expliquer
Explique pourquoi `7/3` est entre `2` et `3`.
Reponse attendue :
- `6/3 = 2` et `9/3 = 3`. Comme `7/3` est entre `6/3` et `9/3`, alors `7/3` est entre `2` et `3`.
## Observations pour Professeur TOP
- Si l'eleve encadre par des entiers trop eloignes, faire chercher les entiers consecutifs.
- Si le meme denominateur disparait, revenir a `6/3`, `7/3`, `9/3`.
- Si l'eleve compte bien mais ecrit mal les signes, accepter d'abord une phrase orale.

View File

@@ -0,0 +1,62 @@
# Exercices - Additionner ou soustraire des fractions simples
## Intention
Verifier que l'eleve calcule avec des fractions de meme denominateur en gardant la taille des parts.
## Exercice 1 - Additionner
Calcule :
- `1/5 + 2/5`
- `2/7 + 3/7`
- `4/10 + 5/10`
Reponses attendues :
- `3/5`
- `5/7`
- `9/10`
## Exercice 2 - Soustraire
Calcule :
- `6/8 - 2/8`
- `7/9 - 3/9`
- `10/12 - 4/12`
Reponses attendues :
- `4/8`
- `4/9`
- `6/12`
## Exercice 3 - Depasser 1
Calcule puis dis si le resultat depasse `1` :
- `3/4 + 2/4`
- `5/6 + 1/6`
- `4/7 + 2/7`
Reponses attendues :
- `5/4`, depasse `1`
- `6/6`, egal a `1`
- `6/7`, ne depasse pas `1`
## Exercice 4 - Expliquer la regle
Pourquoi garde-t-on le denominateur dans `2/7 + 3/7 = 5/7` ?
Reponse attendue :
- Parce que les parts ont la meme taille : ce sont toujours des septiemes.
## Observations pour Professeur TOP
- Si l'eleve additionne les denominateurs, revenir a la bande partagee en parts egales.
- Si l'eleve simplifie spontanement, accepter mais rappeler que la phase attend la fraction non reduite.
- Si l'eleve oublie de verifier les denominateurs, poser toujours la question avant le calcul.

View File

@@ -0,0 +1,60 @@
# Exercices - Determiner une fraction d'une quantite
## Intention
Verifier que l'eleve sait partager une quantite selon le denominateur, puis prendre le nombre de parts indique par le numerateur.
## Exercice 1 - Une part
Calcule :
- `1/2` de `18`
- `1/3` de `24`
- `1/5` de `40`
Reponses attendues :
- `9`
- `8`
- `8`
## Exercice 2 - Plusieurs parts
Calcule :
- `3/4` de `20`
- `2/5` de `30`
- `3/6` de `42`
Reponses attendues :
- `15`
- `12`
- `21`
## Exercice 3 - Completer les deux etapes
Complete :
- `3/4` de `28` : `28 / 4 = ...`, puis `... x 3 = ...`
- `2/3` de `18` : `18 / 3 = ...`, puis `... x 2 = ...`
Reponses attendues :
- `28 / 4 = 7`, puis `7 x 3 = 21`
- `18 / 3 = 6`, puis `6 x 2 = 12`
## Exercice 4 - Probleme court
Dans une classe de `28` eleves, `3/4` participent a un atelier. Combien d'eleves participent ?
Reponse attendue :
- `21` eleves participent.
## Observations pour Professeur TOP
- Si l'eleve multiplie avant de partager, revenir aux deux gestes : partager puis prendre.
- Si l'eleve divise par le numerateur, demander quel nombre indique le partage.
- Si l'eleve trouve l'operation mais oublie l'unite, faire reformuler avec la quantite de depart.

View File

@@ -0,0 +1,19 @@
# Exercices textuels - CM1 - Fractions
Ce dossier contient les exercices textuels de la Phase 5A pour le sous-theme `01B_fractions`.
Organisation :
- un sous-dossier par micro-competence ;
- un fichier `exercices.md` par sous-dossier ;
- des exercices progressifs, avec reponses attendues et observations pedagogiques.
Statut Phase 5A : exercices initiaux generes, a relire avant production des SVG d'exercices.
## Principes
- Une consigne courte par exercice.
- Une difficulte progressive : reconnaissance, application directe, transfert court, verbalisation.
- Pas de piege inutile.
- Les reponses restent simples a verifier oralement ou par saisie texte.

View File

@@ -0,0 +1,10 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#d9e7e1;stroke-width:3}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:3}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:54px;font-weight:800;fill:#074f4b}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:25px;fill:#1d3038}.small{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:22px;fill:#2d4148}.frac{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:72px;font-weight:800;fill:#074f4b}.line{stroke:#26383d;stroke-width:4;stroke-linecap:round}.blank{stroke:#7fa79d;stroke-width:3;stroke-dasharray:10 10}.orange{fill:#e78232}.blue{fill:#1d78b5}</style></defs>
<rect class="bg" width="1600" height="900"/>
<rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/>
<text x="800" y="116" text-anchor="middle" class="title">Exercices - Lire et écrire une fraction</text>
<g transform="translate(110 190)"><rect width="430" height="560" rx="24" class="soft"/><text x="32" y="58" class="h2">1. Lis les fractions</text><g class="math-expression"><g transform="translate(70 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="frac">1</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="frac">2</text></g></g><g class="math-expression"><g transform="translate(70 235)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="frac">3</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="frac">4</text></g></g><g class="math-expression"><g transform="translate(70 325)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="frac">5</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="frac">8</text></g></g><g class="math-expression"><g transform="translate(70 415)" class="fraction-g"><text x="25.3" y="-15.64" text-anchor="middle" class="frac">7</text><line x1="0" y1="1.84" x2="50.6" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="25.3" y="26.68" text-anchor="middle" class="frac">10</text></g></g><line x1="230" y1="145" x2="375" y2="145" class="blank"/><line x1="230" y1="235" x2="375" y2="235" class="blank"/><line x1="230" y1="325" x2="375" y2="325" class="blank"/><line x1="250" y1="415" x2="375" y2="415" class="blank"/></g>
<g transform="translate(590 190)"><rect width="430" height="560" rx="24" class="panel"/><text x="32" y="58" class="h2">2. Haut et bas</text><g class="math-expression"><g transform="translate(58 135)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="frac">2</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="frac">5</text></g></g><g class="math-expression"><g transform="translate(58 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="frac">4</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="frac">9</text></g></g><g class="math-expression"><g transform="translate(58 375)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="frac">6</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="frac">7</text></g></g><text x="210" y="120" class="small">Numérateur :</text><line x1="210" y1="155" x2="370" y2="155" class="blank"/><text x="210" y="205" class="small">Dénominateur :</text><line x1="210" y1="240" x2="370" y2="240" class="blank"/><text x="210" y="325" class="small">Recommence pour les autres.</text></g>
<g transform="translate(1070 190)"><rect width="420" height="560" rx="24" class="soft"/><text x="32" y="58" class="h2">3. Écris en chiffres</text><text x="45" y="140" class="body">deux tiers</text><line x1="45" y1="180" x2="340" y2="180" class="blank"/><text x="45" y="255" class="body">trois cinquièmes</text><line x1="45" y1="295" x2="340" y2="295" class="blank"/><text x="45" y="370" class="body">neuf dixièmes</text><line x1="45" y1="410" x2="340" y2="410" class="blank"/><text x="45" y="500" class="small">Explique avec unité et parts.</text></g>
</svg>

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@@ -0,0 +1,9 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#d9e7e1;stroke-width:3}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:3}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:54px;font-weight:800;fill:#074f4b}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:25px;fill:#1d3038}.small{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:22px;fill:#2d4148}.line{stroke:#26383d;stroke-width:4}.blank{stroke:#7fa79d;stroke-width:3;stroke-dasharray:10 10}.orange{fill:#e78232}.green{fill:#2f9246}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/>
<text x="800" y="116" text-anchor="middle" class="title">Exercices - Représenter une fraction</text>
<g transform="translate(110 190)"><rect width="430" height="560" rx="24" class="soft"/><text x="32" y="58" class="h2">1. Quelle fraction ?</text><text x="45" y="115" class="body">2 parts sur 3</text><line x1="45" y1="150" x2="340" y2="150" class="blank"/><text x="45" y="225" class="body">4 parts sur 5</text><line x1="45" y1="260" x2="340" y2="260" class="blank"/><text x="45" y="335" class="body">6 parts sur 10</text><line x1="45" y1="370" x2="340" y2="370" class="blank"/></g>
<g transform="translate(590 190)"><rect width="430" height="560" rx="24" class="panel"/><g class="math-expression"><text x="32" y="58" class="h2">2. Colorie </text><g transform="translate(204.48 58)" class="fraction-g"><text x="14" y="-9.52" text-anchor="middle" class="h2">3</text><line x1="0" y1="1.12" x2="28" y2="1.12" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="16.24" text-anchor="middle" class="h2">6</text></g></g><g transform="translate(50 145)"><rect width="330" height="95" rx="12" fill="#f7fbf9" stroke="#26383d" stroke-width="3"/><line x1="55" y1="0" x2="55" y2="95" class="line"/><line x1="110" y1="0" x2="110" y2="95" class="line"/><line x1="165" y1="0" x2="165" y2="95" class="line"/><line x1="220" y1="0" x2="220" y2="95" class="line"/><line x1="275" y1="0" x2="275" y2="95" class="line"/></g><text x="50" y="315" class="body">Puis explique :</text><text x="50" y="365" class="small">Dénominateur =</text><line x1="220" y1="365" x2="365" y2="365" class="blank"/><text x="50" y="430" class="small">Numérateur =</text><line x1="220" y1="430" x2="365" y2="430" class="blank"/></g>
<g transform="translate(1070 190)"><rect width="420" height="560" rx="24" class="soft"/><text x="32" y="58" class="h2">3. Collection</text><text x="45" y="112" class="body">12 jetons, 5 rouges</text><g transform="translate(65 170)"><circle cx="0" cy="0" r="18" class="green"/><circle cx="52" cy="0" r="18" class="green"/><circle cx="104" cy="0" r="18" class="green"/><circle cx="156" cy="0" r="18" class="green"/><circle cx="208" cy="0" r="18" class="green"/><circle cx="260" cy="0" r="18" fill="#e8f3ee" stroke="#26383d"/><circle cx="0" cy="65" r="18" fill="#e8f3ee" stroke="#26383d"/><circle cx="52" cy="65" r="18" fill="#e8f3ee" stroke="#26383d"/><circle cx="104" cy="65" r="18" fill="#e8f3ee" stroke="#26383d"/><circle cx="156" cy="65" r="18" fill="#e8f3ee" stroke="#26383d"/><circle cx="208" cy="65" r="18" fill="#e8f3ee" stroke="#26383d"/><circle cx="260" cy="65" r="18" fill="#e8f3ee" stroke="#26383d"/></g><text x="45" y="340" class="body">Fraction rouge :</text><line x1="45" y1="390" x2="340" y2="390" class="blank"/><text x="45" y="480" class="small">Les parts doivent etre égales.</text></g>
</svg>

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#d9e7e1;stroke-width:3}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:3}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:52px;font-weight:800;fill:#074f4b}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:25px;fill:#1d3038}.small{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:21px;fill:#2d4148}.axis{stroke:#26383d;stroke-width:5;stroke-linecap:round}.tick{stroke:#26383d;stroke-width:4}.blank{stroke:#7fa79d;stroke-width:3;stroke-dasharray:10 10}.orange{fill:#e78232}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/><text x="800" y="116" text-anchor="middle" class="title">Exercices - Fraction sur demi-droite</text>
<g transform="translate(115 200)"><rect width="1370" height="260" rx="24" class="soft"/><g class="math-expression"><text x="36" y="58" class="h2">1. Place </text><g transform="translate(177.12 58)" class="fraction-g"><text x="14" y="-9.52" text-anchor="middle" class="h2">3</text><line x1="0" y1="1.12" x2="28" y2="1.12" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="16.24" text-anchor="middle" class="h2">4</text></g></g><line x1="130" y1="155" x2="640" y2="155" class="axis"/><polygon points="640,155 610,138 610,172" fill="#26383d"/><g transform="translate(130 0)"><line x1="0" y1="125" x2="0" y2="185" class="tick"/><text x="0" y="220" text-anchor="middle" class="body">0</text><line x1="120" y1="135" x2="120" y2="175" class="tick"/><line x1="240" y1="135" x2="240" y2="175" class="tick"/><line x1="360" y1="135" x2="360" y2="175" class="tick"/><line x1="480" y1="125" x2="480" y2="185" class="tick"/><text x="480" y="220" text-anchor="middle" class="body">1</text></g><text x="760" y="125" class="body">Unité partagée en 4 parts.</text><text x="760" y="180" class="body">Avance de combien de parts ?</text><line x1="1090" y1="180" x2="1260" y2="180" class="blank"/></g>
<g transform="translate(115 520)"><rect width="1370" height="230" rx="24" class="panel"/><text x="36" y="58" class="h2">2. Lis le point</text><line x1="130" y1="145" x2="640" y2="145" class="axis"/><polygon points="640,145 610,128 610,162" fill="#26383d"/><g transform="translate(130 0)"><line x1="0" y1="115" x2="0" y2="175" class="tick"/><text x="0" y="210" text-anchor="middle" class="body">0</text><line x1="96" y1="125" x2="96" y2="165" class="tick"/><line x1="192" y1="125" x2="192" y2="165" class="tick"/><circle cx="192" cy="145" r="16" class="orange"/><line x1="288" y1="125" x2="288" y2="165" class="tick"/><line x1="384" y1="125" x2="384" y2="165" class="tick"/><line x1="480" y1="115" x2="480" y2="175" class="tick"/><text x="480" y="210" text-anchor="middle" class="body">1</text></g><text x="760" y="125" class="body">L'unité est en 5 parts.</text><text x="760" y="180" class="body">Le point indique :</text><line x1="980" y1="180" x2="1260" y2="180" class="blank"/></g>
</svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@@ -0,0 +1,8 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#d9e7e1;stroke-width:3}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:3}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:52px;font-weight:800;fill:#074f4b}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:25px;fill:#1d3038}.num{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:38px;font-weight:800;fill:#074f4b}.line{stroke:#26383d;stroke-width:4}.blank{stroke:#7fa79d;stroke-width:3;stroke-dasharray:10 10}.orange{fill:#e78232}.green{fill:#2f9246}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/><text x="800" y="116" text-anchor="middle" class="title">Exercices - Fraction supérieure à 1</text>
<g transform="translate(105 190)"><rect width="455" height="560" rx="24" class="soft"/><text x="32" y="58" class="h2">1. Entoure &gt; 1</text><g class="math-expression"><g transform="translate(65 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">2</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">5</text></g></g><g class="math-expression"><g transform="translate(250 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">5</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">5</text></g></g><g class="math-expression"><g transform="translate(65 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">7</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">5</text></g></g><g class="math-expression"><g transform="translate(250 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">9</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">4</text></g></g><g class="math-expression"><g transform="translate(65 365)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">3</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">8</text></g></g><text x="55" y="480" class="body">Attention : égal à 1 n'est pas &gt; 1.</text></g>
<g transform="translate(610 190)"><rect width="455" height="560" rx="24" class="panel"/><text x="32" y="58" class="h2">2. Complète</text><g class="math-expression"><g transform="translate(55 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">5</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">4</text></g><text x="107.44" y="145" class="num"> = </text><g transform="translate(184.72 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">4</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">4</text></g><text x="237.16" y="145" class="num"> +</text></g><line x1="320" y1="145" x2="410" y2="145" class="blank"/><g class="math-expression"><g transform="translate(55 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">7</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">3</text></g><text x="107.44" y="255" class="num"> = </text><g transform="translate(184.72 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">6</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">3</text></g><text x="237.16" y="255" class="num"> +</text></g><line x1="320" y1="255" x2="410" y2="255" class="blank"/><g class="math-expression"><g transform="translate(55 365)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">9</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">2</text></g><text x="107.44" y="365" class="num"> = </text><g transform="translate(184.72 365)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">8</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">2</text></g><text x="237.16" y="365" class="num"> +</text></g><line x1="320" y1="365" x2="410" y2="365" class="blank"/></g>
<g transform="translate(1115 190)"><rect width="380" height="560" rx="24" class="soft"/><g class="math-expression"><text x="32" y="58" class="h2">3. Représente </text><g transform="translate(251.52 58)" class="fraction-g"><text x="14" y="-9.52" text-anchor="middle" class="h2">7</text><line x1="0" y1="1.12" x2="28" y2="1.12" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="16.24" text-anchor="middle" class="h2">4</text></g></g><g transform="translate(45 120)"><rect width="280" height="70" rx="10" fill="#f7fbf9" stroke="#26383d" stroke-width="3"/><rect width="70" height="70" rx="10" class="green"/><rect x="70" width="70" height="70" class="green"/><rect x="140" width="70" height="70" class="green"/><rect x="210" width="70" height="70" class="green"/><line x1="70" y1="0" x2="70" y2="70" class="line"/><line x1="140" y1="0" x2="140" y2="70" class="line"/><line x1="210" y1="0" x2="210" y2="70" class="line"/><rect y="115" width="280" height="70" rx="10" fill="#f7fbf9" stroke="#26383d" stroke-width="3"/><line x1="70" y1="115" x2="70" y2="185" class="line"/><line x1="140" y1="115" x2="140" y2="185" class="line"/><line x1="210" y1="115" x2="210" y2="185" class="line"/></g><text x="45" y="390" class="body">Colorie le reste.</text><line x1="45" y1="455" x2="320" y2="455" class="blank"/></g>
</svg>

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@@ -0,0 +1,8 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#d9e7e1;stroke-width:3}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:3}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:52px;font-weight:800;fill:#074f4b}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:25px;fill:#1d3038}.num{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:42px;font-weight:800;fill:#074f4b}.blank{stroke:#7fa79d;stroke-width:3;stroke-dasharray:10 10}.orange{fill:#e78232}.blue{fill:#1d78b5}.line{stroke:#26383d;stroke-width:4}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/><text x="800" y="116" text-anchor="middle" class="title">Exercices - Comparer des fractions</text>
<g transform="translate(105 190)"><rect width="455" height="560" rx="24" class="soft"/><text x="32" y="58" class="h2">1. Complète</text><g class="math-expression"><g transform="translate(55 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">2</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">7</text></g></g><line x1="170" y1="145" x2="235" y2="145" class="blank"/><g class="math-expression"><g transform="translate(260 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">5</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">7</text></g></g><g class="math-expression"><g transform="translate(55 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">6</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">8</text></g></g><line x1="170" y1="255" x2="235" y2="255" class="blank"/><g class="math-expression"><g transform="translate(260 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">3</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">8</text></g></g><g class="math-expression"><g transform="translate(55 365)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">4</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">9</text></g></g><line x1="170" y1="365" x2="235" y2="365" class="blank"/><g class="math-expression"><g transform="translate(260 365)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">4</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">9</text></g></g></g>
<g transform="translate(610 190)"><rect width="455" height="560" rx="24" class="panel"/><text x="32" y="58" class="h2">2. Choisis la plus grande</text><g class="math-expression"><g transform="translate(55 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">1</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">2</text></g><text x="107.44" y="145" class="num"> ou </text><g transform="translate(210.48 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">1</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">4</text></g></g><line x1="55" y1="190" x2="385" y2="190" class="blank"/><g class="math-expression"><g transform="translate(55 280)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">2</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">3</text></g><text x="107.44" y="280" class="num"> ou </text><g transform="translate(210.48 280)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">2</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">5</text></g></g><line x1="55" y1="325" x2="385" y2="325" class="blank"/><g class="math-expression"><g transform="translate(55 415)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">3</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">6</text></g><text x="107.44" y="415" class="num"> ou </text><g transform="translate(210.48 415)" class="fraction-g"><text x="25.3" y="-15.64" text-anchor="middle" class="num">3</text><line x1="0" y1="1.84" x2="50.6" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="25.3" y="26.68" text-anchor="middle" class="num">10</text></g></g><line x1="55" y1="460" x2="385" y2="460" class="blank"/></g>
<g transform="translate(1115 190)"><rect width="380" height="560" rx="24" class="soft"/><text x="32" y="58" class="h2">3. Compare avec 1</text><g class="math-expression"><g transform="translate(55 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">5</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">6</text></g></g><line x1="165" y1="145" x2="230" y2="145" class="blank"/><text x="255" y="145" class="num">1</text><g class="math-expression"><g transform="translate(55 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">6</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">6</text></g></g><line x1="165" y1="255" x2="230" y2="255" class="blank"/><text x="255" y="255" class="num">1</text><g class="math-expression"><g transform="translate(55 365)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">8</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">6</text></g></g><line x1="165" y1="365" x2="230" y2="365" class="blank"/><text x="255" y="365" class="num">1</text><text x="55" y="475" class="body">Justifie un choix.</text></g>
</svg>

After

Width:  |  Height:  |  Size: 6.7 KiB

View File

@@ -0,0 +1,8 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#d9e7e1;stroke-width:3}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:3}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:52px;font-weight:800;fill:#074f4b}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:25px;fill:#1d3038}.num{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:40px;font-weight:800;fill:#074f4b}.axis{stroke:#26383d;stroke-width:5}.tick{stroke:#26383d;stroke-width:4}.blank{stroke:#7fa79d;stroke-width:3;stroke-dasharray:10 10}.orange{fill:#e78232}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/><text x="800" y="116" text-anchor="middle" class="title">Exercices - Ençadrer une fraction</text>
<g transform="translate(105 190)"><rect width="455" height="560" rx="24" class="soft"/><text x="32" y="58" class="h2">1. Entiers en fractions</text><text x="45" y="145" class="num">1 =</text><line x1="130" y1="145" x2="215" y2="145" class="blank"/><text x="235" y="145" class="num">/4</text><text x="45" y="245" class="num">2 =</text><line x1="130" y1="245" x2="215" y2="245" class="blank"/><text x="235" y="245" class="num">/4</text><text x="45" y="365" class="body">Puis recommence en tiers.</text></g>
<g transform="translate(610 190)"><rect width="455" height="560" rx="24" class="panel"/><text x="32" y="58" class="h2">2. Complète</text><line x1="55" y1="145" x2="115" y2="145" class="blank"/><g class="math-expression"><text x="130" y="145" class="num">&lt; </text><g transform="translate(181.52 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">5</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">4</text></g><text x="233.96" y="145" class="num"> &lt;</text></g><line x1="325" y1="145" x2="395" y2="145" class="blank"/><line x1="55" y1="255" x2="115" y2="255" class="blank"/><g class="math-expression"><text x="130" y="255" class="num">&lt; </text><g transform="translate(181.52 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">8</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">3</text></g><text x="233.96" y="255" class="num"> &lt;</text></g><line x1="325" y1="255" x2="395" y2="255" class="blank"/><line x1="55" y1="365" x2="115" y2="365" class="blank"/><g class="math-expression"><text x="130" y="365" class="num">&lt; </text><g transform="translate(181.52 365)" class="fraction-g"><text x="25.3" y="-15.64" text-anchor="middle" class="num">11</text><line x1="0" y1="1.84" x2="50.6" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="25.3" y="26.68" text-anchor="middle" class="num">5</text></g><text x="251.44" y="365" class="num"> &lt;</text></g><line x1="345" y1="365" x2="415" y2="365" class="blank"/></g>
<g transform="translate(1115 190)"><rect width="380" height="560" rx="24" class="soft"/><g class="math-expression"><text x="32" y="58" class="h2">3. Place </text><g transform="translate(173.12 58)" class="fraction-g"><text x="15.4" y="-9.52" text-anchor="middle" class="h2">13</text><line x1="0" y1="1.12" x2="30.8" y2="1.12" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="15.4" y="16.24" text-anchor="middle" class="h2">6</text></g></g><line x1="45" y1="210" x2="320" y2="210" class="axis"/><g transform="translate(60 0)"><line x1="0" y1="180" x2="0" y2="240" class="tick"/><text x="0" y="275" text-anchor="middle" class="body">1</text><line x1="120" y1="180" x2="120" y2="240" class="tick"/><text x="120" y="275" text-anchor="middle" class="body">2</text><line x1="240" y1="180" x2="240" y2="240" class="tick"/><text x="240" y="275" text-anchor="middle" class="body">3</text></g><text x="45" y="370" class="body">Ençadrement :</text><line x1="45" y1="425" x2="320" y2="425" class="blank"/></g>
</svg>

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

@@ -0,0 +1,8 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#d9e7e1;stroke-width:3}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:3}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:50px;font-weight:800;fill:#074f4b}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:25px;fill:#1d3038}.num{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:40px;font-weight:800;fill:#074f4b}.blank{stroke:#7fa79d;stroke-width:3;stroke-dasharray:10 10}.orange{fill:#e78232}.blue{fill:#1d78b5}.line{stroke:#26383d;stroke-width:4}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/><text x="800" y="116" text-anchor="middle" class="title">Exercices - Additionner et soustraire des fractions</text>
<g transform="translate(105 190)"><rect width="455" height="560" rx="24" class="soft"/><text x="32" y="58" class="h2">1. Additionne</text><g class="math-expression"><g transform="translate(55 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">1</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">5</text></g><text x="107.44" y="145" class="num"> + </text><g transform="translate(184.72 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">2</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">5</text></g><text x="237.16" y="145" class="num"> =</text></g><line x1="320" y1="145" x2="410" y2="145" class="blank"/><g class="math-expression"><g transform="translate(55 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">2</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">7</text></g><text x="107.44" y="255" class="num"> + </text><g transform="translate(184.72 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">3</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">7</text></g><text x="237.16" y="255" class="num"> =</text></g><line x1="320" y1="255" x2="410" y2="255" class="blank"/><g class="math-expression"><g transform="translate(55 365)" class="fraction-g"><text x="25.3" y="-15.64" text-anchor="middle" class="num">4</text><line x1="0" y1="1.84" x2="50.6" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="25.3" y="26.68" text-anchor="middle" class="num">10</text></g><text x="124.92" y="365" class="num"> + </text><g transform="translate(202.2 365)" class="fraction-g"><text x="25.3" y="-15.64" text-anchor="middle" class="num">5</text><line x1="0" y1="1.84" x2="50.6" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="25.3" y="26.68" text-anchor="middle" class="num">10</text></g><text x="272.12" y="365" class="num"> =</text></g><line x1="360" y1="365" x2="430" y2="365" class="blank"/></g>
<g transform="translate(610 190)"><rect width="455" height="560" rx="24" class="panel"/><text x="32" y="58" class="h2">2. Soustrais</text><g class="math-expression"><g transform="translate(55 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">6</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">8</text></g><text x="107.44" y="145" class="num"> - </text><g transform="translate(184.72 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">2</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">8</text></g><text x="237.16" y="145" class="num"> =</text></g><line x1="320" y1="145" x2="410" y2="145" class="blank"/><g class="math-expression"><g transform="translate(55 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">7</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">9</text></g><text x="107.44" y="255" class="num"> - </text><g transform="translate(184.72 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">3</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">9</text></g><text x="237.16" y="255" class="num"> =</text></g><line x1="320" y1="255" x2="410" y2="255" class="blank"/><g class="math-expression"><g transform="translate(55 365)" class="fraction-g"><text x="25.3" y="-15.64" text-anchor="middle" class="num">10</text><line x1="0" y1="1.84" x2="50.6" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="25.3" y="26.68" text-anchor="middle" class="num">12</text></g><text x="142.4" y="365" class="num"> - </text><g transform="translate(219.68 365)" class="fraction-g"><text x="25.3" y="-15.64" text-anchor="middle" class="num">4</text><line x1="0" y1="1.84" x2="50.6" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="25.3" y="26.68" text-anchor="middle" class="num">12</text></g><text x="289.6" y="365" class="num"> =</text></g><line x1="370" y1="365" x2="430" y2="365" class="blank"/></g>
<g transform="translate(1115 190)"><rect width="380" height="560" rx="24" class="soft"/><g class="math-expression"><text x="32" y="58" class="h2">3. Dessine </text><g transform="translate(204.48 58)" class="fraction-g"><text x="14" y="-9.52" text-anchor="middle" class="h2">2</text><line x1="0" y1="1.12" x2="28" y2="1.12" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="16.24" text-anchor="middle" class="h2">7</text></g><text x="238.48" y="58" class="h2"> + </text><g transform="translate(285.52 58)" class="fraction-g"><text x="14" y="-9.52" text-anchor="middle" class="h2">3</text><line x1="0" y1="1.12" x2="28" y2="1.12" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="16.24" text-anchor="middle" class="h2">7</text></g></g><g transform="translate(45 135)"><rect width="280" height="70" rx="10" fill="#f7fbf9" stroke="#26383d" stroke-width="3"/><rect width="40" height="70" rx="10" class="orange"/><rect x="40" width="40" height="70" class="orange"/><rect x="80" width="40" height="70" class="blue"/><rect x="120" width="40" height="70" class="blue"/><rect x="160" width="40" height="70" class="blue"/><line x1="40" y1="0" x2="40" y2="70" class="line"/><line x1="80" y1="0" x2="80" y2="70" class="line"/><line x1="120" y1="0" x2="120" y2="70" class="line"/><line x1="160" y1="0" x2="160" y2="70" class="line"/><line x1="200" y1="0" x2="200" y2="70" class="line"/><line x1="240" y1="0" x2="240" y2="70" class="line"/></g><text x="45" y="300" class="body">Résultat :</text><line x1="45" y1="350" x2="320" y2="350" class="blank"/><text x="45" y="450" class="body">Le dénominateur reste :</text><line x1="45" y1="500" x2="320" y2="500" class="blank"/></g>
</svg>

After

Width:  |  Height:  |  Size: 7.3 KiB

View File

@@ -0,0 +1,8 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#d9e7e1;stroke-width:3}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:3}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:52px;font-weight:800;fill:#074f4b}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:25px;fill:#1d3038}.num{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:38px;font-weight:800;fill:#074f4b}.blank{stroke:#7fa79d;stroke-width:3;stroke-dasharray:10 10}.orange{fill:#e78232}.line{stroke:#26383d;stroke-width:4}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/><text x="800" y="116" text-anchor="middle" class="title">Exercices - Fraction d'une quantité</text>
<g transform="translate(105 190)"><rect width="455" height="560" rx="24" class="soft"/><text x="32" y="58" class="h2">1. Une part</text><g class="math-expression"><g transform="translate(55 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">1</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">2</text></g><text x="107.44" y="145" class="num"> de 18 =</text></g><line x1="300" y1="145" x2="410" y2="145" class="blank"/><g class="math-expression"><g transform="translate(55 255)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">1</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">3</text></g><text x="107.44" y="255" class="num"> de 24 =</text></g><line x1="300" y1="255" x2="410" y2="255" class="blank"/><g class="math-expression"><g transform="translate(55 365)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">1</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">5</text></g><text x="107.44" y="365" class="num"> de 40 =</text></g><line x1="300" y1="365" x2="410" y2="365" class="blank"/></g>
<g transform="translate(610 190)"><rect width="455" height="560" rx="24" class="panel"/><text x="32" y="58" class="h2">2. Partage puis prends</text><g class="math-expression"><g transform="translate(55 130)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">3</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">4</text></g><text x="107.44" y="130" class="num"> de 20</text></g><text x="55" y="205" class="body">20 ÷ 4 =</text><line x1="190" y1="205" x2="350" y2="205" class="blank"/><text x="55" y="285" class="body">Puis x 3 =</text><line x1="205" y1="285" x2="350" y2="285" class="blank"/><g transform="translate(55 375)"><rect width="330" height="70" rx="10" fill="#f7fbf9" stroke="#26383d" stroke-width="3"/><line x1="82.5" y1="0" x2="82.5" y2="70" class="line"/><line x1="165" y1="0" x2="165" y2="70" class="line"/><line x1="247.5" y1="0" x2="247.5" y2="70" class="line"/></g></g>
<g transform="translate(1115 190)"><rect width="380" height="560" rx="24" class="soft"/><text x="32" y="58" class="h2">3. Problème</text><text x="45" y="120" class="body">28 élèves.</text><g class="math-expression"><g transform="translate(45 165)" class="fraction-g"><text x="14" y="-8.16" text-anchor="middle" class="body">3</text><line x1="0" y1="0.96" x2="28" y2="0.96" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="13.92" text-anchor="middle" class="body">4</text></g><text x="79" y="165" class="body"> participent.</text></g><text x="45" y="240" class="body">Combien ?</text><line x1="45" y1="300" x2="320" y2="300" class="blank"/><text x="45" y="405" class="body">Deux gestes :</text><text x="45" y="455" class="body">1. partager</text><text x="45" y="505" class="body">2. prendre</text></g>
</svg>

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

@@ -0,0 +1,13 @@
# SVG exercices - CM1 - Fractions
Ce dossier contient les planches SVG d'exercices de la Phase 6A pour le sous-theme `01B_fractions`.
Organisation :
- une planche SVG par micro-competence ;
- consignes courtes ;
- zones de reponse visibles ;
- pas de corrige dans le visuel.
Les corriges restent dans les fichiers `exercices/*/exercices.md`.

View File

@@ -0,0 +1,44 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs>
<style>
.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#e2ebe6;stroke-width:2;filter:drop-shadow(0 10px 24px rgba(22,42,45,.10))}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:2}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:58px;font-weight:800;fill:#074f4b}.subtitle{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:26px;font-weight:700;fill:#1e3540}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:24px;fill:#1d3038}.small{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:19px;fill:#2d4148}.frac{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:96px;font-weight:800;fill:#074f4b}.orange{fill:#e78232}.blue{fill:#1d78b5}.green{fill:#2f9246}.line{stroke:#26383d;stroke-width:4;stroke-linecap:round}
</style>
</defs>
<rect class="bg" width="1600" height="900"/>
<rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/>
<text x="800" y="116" text-anchor="middle" class="title">Lire et écrire une fraction</text>
<text x="800" y="160" text-anchor="middle" class="subtitle">Maths CM1 - Numérateur, dénominateur, unité</text>
<line x1="430" y1="194" x2="1170" y2="194" stroke="#dbe8e3" stroke-width="4"/>
<g transform="translate(110 245)">
<rect width="455" height="300" rx="24" class="soft"/>
<text x="34" y="58" class="h2">La fraction</text>
<text x="228" y="150" text-anchor="middle" class="frac">3</text>
<line x1="182" y1="178" x2="274" y2="178" class="line"/>
<text x="228" y="270" text-anchor="middle" class="frac">4</text>
</g>
<g transform="translate(625 245)">
<rect width="360" height="300" rx="24" class="panel"/>
<text x="30" y="58" class="h2">Ce que ça dit</text>
<circle cx="55" cy="112" r="15" class="orange"/><text x="84" y="120" class="body">3 parts prises</text>
<circle cx="55" cy="168" r="15" class="blue"/><text x="84" y="176" class="body">4 parts égales</text>
<g class="math-expression"><g transform="translate(30 235)" class="fraction-g"><text x="14" y="-8.16" text-anchor="middle" class="body">3</text><line x1="0" y1="0.96" x2="28" y2="0.96" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="13.92" text-anchor="middle" class="body">4</text></g><text x="64" y="235" class="body"> se lit :</text></g>
<text x="30" y="272" class="body">trois quarts</text>
</g>
<g transform="translate(1040 245)">
<rect width="430" height="300" rx="24" class="panel"/>
<text x="30" y="58" class="h2">L'unité partagée</text>
<g transform="translate(45 110)">
<rect x="0" y="0" width="320" height="90" rx="14" fill="#f7fbf9" stroke="#26383d" stroke-width="3"/>
<rect x="0" y="0" width="80" height="90" rx="14" class="orange"/>
<rect x="80" y="0" width="80" height="90" class="orange"/>
<rect x="160" y="0" width="80" height="90" class="orange"/>
<line x1="80" y1="0" x2="80" y2="90" class="line"/><line x1="160" y1="0" x2="160" y2="90" class="line"/><line x1="240" y1="0" x2="240" y2="90" class="line"/>
</g>
<text x="45" y="248" class="small">L'unité est coupée en 4 parts égales.</text>
</g>
<g transform="translate(170 615)">
<rect width="1260" height="150" rx="24" class="panel"/>
<text x="36" y="55" class="h2">À retenir</text>
<text x="36" y="100" class="body">Le dénominateur indique le partage. Le numérateur indique les parts prises.</text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@@ -0,0 +1,17 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#e2ebe6;stroke-width:2;filter:drop-shadow(0 10px 24px rgba(22,42,45,.10))}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:2}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:58px;font-weight:800;fill:#074f4b}.subtitle{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:26px;font-weight:700;fill:#1e3540}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:24px;fill:#1d3038}.small{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:19px;fill:#2d4148}.orange{fill:#e78232}.blue{fill:#1d78b5}.green{fill:#2f9246}.line{stroke:#26383d;stroke-width:4;stroke-linecap:round}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/>
<text x="800" y="116" text-anchor="middle" class="title">Représenter une fraction</text>
<text x="800" y="160" text-anchor="middle" class="subtitle">Je partage l'unité en parts égales, puis je colorie</text>
<line x1="430" y1="194" x2="1170" y2="194" stroke="#dbe8e3" stroke-width="4"/>
<g transform="translate(110 245)"><rect width="420" height="330" rx="24" class="panel"/><g class="math-expression"><text x="34" y="58" class="h2">Bande : </text><g transform="translate(159.44 58)" class="fraction-g"><text x="14" y="-9.52" text-anchor="middle" class="h2">3</text><line x1="0" y1="1.12" x2="28" y2="1.12" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="16.24" text-anchor="middle" class="h2">5</text></g></g>
<g transform="translate(45 132)"><rect width="320" height="92" rx="12" fill="#f7fbf9" stroke="#26383d" stroke-width="3"/><rect width="64" height="92" rx="12" class="orange"/><rect x="64" width="64" height="92" class="orange"/><rect x="128" width="64" height="92" class="orange"/><line x1="64" y1="0" x2="64" y2="92" class="line"/><line x1="128" y1="0" x2="128" y2="92" class="line"/><line x1="192" y1="0" x2="192" y2="92" class="line"/><line x1="256" y1="0" x2="256" y2="92" class="line"/></g>
<text x="45" y="285" class="small">5 parts égales, 3 parts coloriées</text></g>
<g transform="translate(590 245)"><rect width="420" height="330" rx="24" class="soft"/><g class="math-expression"><text x="34" y="58" class="h2">Disque : </text><g transform="translate(175.12 58)" class="fraction-g"><text x="14" y="-9.52" text-anchor="middle" class="h2">1</text><line x1="0" y1="1.12" x2="28" y2="1.12" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="16.24" text-anchor="middle" class="h2">4</text></g></g>
<circle cx="210" cy="178" r="90" fill="#f7fbf9" stroke="#26383d" stroke-width="4"/><path d="M210 178 L210 88 A90 90 0 0 1 300 178 Z" class="blue"/><line x1="210" y1="88" x2="210" y2="268" class="line"/><line x1="120" y1="178" x2="300" y2="178" class="line"/>
<text x="70" y="285" class="small">4 parts égales, 1 part coloriée</text></g>
<g transform="translate(1070 245)"><rect width="420" height="330" rx="24" class="panel"/><g class="math-expression"><text x="34" y="58" class="h2">Collection : </text><g transform="translate(237.84 58)" class="fraction-g"><text x="15.4" y="-9.52" text-anchor="middle" class="h2">6</text><line x1="0" y1="1.12" x2="30.8" y2="1.12" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="15.4" y="16.24" text-anchor="middle" class="h2">10</text></g></g>
<g transform="translate(70 112)"><circle cx="0" cy="0" r="20" class="green"/><circle cx="55" cy="0" r="20" class="green"/><circle cx="110" cy="0" r="20" class="green"/><circle cx="165" cy="0" r="20" class="green"/><circle cx="220" cy="0" r="20" class="green"/><circle cx="275" cy="0" r="20" class="green"/><circle cx="0" cy="70" r="20" fill="#e8f3ee" stroke="#26383d"/><circle cx="55" cy="70" r="20" fill="#e8f3ee" stroke="#26383d"/><circle cx="110" cy="70" r="20" fill="#e8f3ee" stroke="#26383d"/><circle cx="165" cy="70" r="20" fill="#e8f3ee" stroke="#26383d"/></g>
<text x="58" y="285" class="small">10 objets, 6 sont choisis</text></g>
<g transform="translate(170 645)"><rect width="1260" height="110" rx="24" class="panel"/><text x="36" y="48" class="h2">À retenir</text><text x="36" y="86" class="body">Une fraction n'a de sens que si l'unité et les parts égales sont claires.</text></g>
</svg>

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,19 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#e2ebe6;stroke-width:2;filter:drop-shadow(0 10px 24px rgba(22,42,45,.10))}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:2}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:58px;font-weight:800;fill:#074f4b}.subtitle{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:26px;font-weight:700;fill:#1e3540}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:24px;fill:#1d3038}.small{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:19px;fill:#2d4148}.orange{fill:#e78232}.blue{fill:#1d78b5}.green{fill:#2f9246}.line{stroke:#26383d;stroke-width:4;stroke-linecap:round}.tick{stroke:#26383d;stroke-width:3}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/>
<text x="800" y="116" text-anchor="middle" class="title">Placer une fraction sur une demi-droite</text>
<text x="800" y="160" text-anchor="middle" class="subtitle">Je partage chaque unité selon le dénominateur</text>
<line x1="430" y1="194" x2="1170" y2="194" stroke="#dbe8e3" stroke-width="4"/>
<g transform="translate(125 255)"><rect width="1350" height="340" rx="24" class="soft"/><g class="math-expression"><text x="36" y="60" class="h2">Exemple : placer </text><g transform="translate(302.56 60)" class="fraction-g"><text x="14" y="-9.52" text-anchor="middle" class="h2">5</text><line x1="0" y1="1.12" x2="28" y2="1.12" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="16.24" text-anchor="middle" class="h2">4</text></g></g>
<line x1="100" y1="205" x2="1180" y2="205" class="line"/><path d="M1180 205 L1158 194 L1158 216 Z" fill="#26383d"/>
<g transform="translate(130 0)">
<line x1="0" y1="170" x2="0" y2="240" class="tick"/><text x="0" y="275" text-anchor="middle" class="body">0</text>
<line x1="250" y1="170" x2="250" y2="240" class="tick"/><text x="250" y="275" text-anchor="middle" class="body">1</text>
<line x1="500" y1="170" x2="500" y2="240" class="tick"/><text x="500" y="275" text-anchor="middle" class="body">2</text>
<line x1="62.5" y1="184" x2="62.5" y2="226" class="tick"/><line x1="125" y1="184" x2="125" y2="226" class="tick"/><line x1="187.5" y1="184" x2="187.5" y2="226" class="tick"/><line x1="312.5" y1="184" x2="312.5" y2="226" class="tick"/><line x1="375" y1="184" x2="375" y2="226" class="tick"/><line x1="437.5" y1="184" x2="437.5" y2="226" class="tick"/>
<circle cx="312.5" cy="205" r="16" class="orange"/><g class="math-expression"><g transform="translate(295.5 150)" class="fraction-g"><text x="14" y="-8.16" text-anchor="middle" class="body">5</text><line x1="0" y1="0.96" x2="28" y2="0.96" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="13.92" text-anchor="middle" class="body">4</text></g></g>
</g>
<text x="820" y="150" class="body">Dénominateur 4 :</text><text x="820" y="190" class="body">chaque unité a 4 parts.</text><g class="math-expression"><g transform="translate(820 245)" class="fraction-g"><text x="14" y="-8.16" text-anchor="middle" class="body">5</text><line x1="0" y1="0.96" x2="28" y2="0.96" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="13.92" text-anchor="middle" class="body">4</text></g><text x="854" y="245" class="body"> est juste après 1.</text></g>
</g>
<g transform="translate(170 650)"><rect width="1260" height="110" rx="24" class="panel"/><text x="36" y="48" class="h2">À retenir</text><text x="36" y="86" class="body">L'intervalle de 0 à 1 est l'unité. Je le partage en parts égales.</text></g>
</svg>

After

Width:  |  Height:  |  Size: 3.7 KiB

View File

@@ -0,0 +1,15 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#e2ebe6;stroke-width:2;filter:drop-shadow(0 10px 24px rgba(22,42,45,.10))}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:2}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:58px;font-weight:800;fill:#074f4b}.subtitle{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:26px;font-weight:700;fill:#1e3540}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:24px;fill:#1d3038}.small{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:19px;fill:#2d4148}.num{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:54px;font-weight:800;fill:#074f4b}.orange{fill:#e78232}.green{fill:#2f9246}.line{stroke:#26383d;stroke-width:4;stroke-linecap:round}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/>
<text x="800" y="116" text-anchor="middle" class="title">Fraction supérieure à 1</text>
<text x="800" y="160" text-anchor="middle" class="subtitle">Quand le numérateur depasse le dénominateur</text>
<line x1="430" y1="194" x2="1170" y2="194" stroke="#dbe8e3" stroke-width="4"/>
<g transform="translate(120 245)"><rect width="630" height="360" rx="24" class="soft"/><g class="math-expression"><text x="34" y="60" class="h2">Exemple : </text><g transform="translate(190.8 60)" class="fraction-g"><text x="14" y="-9.52" text-anchor="middle" class="h2">7</text><line x1="0" y1="1.12" x2="28" y2="1.12" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="16.24" text-anchor="middle" class="h2">4</text></g></g>
<g transform="translate(70 130)"><rect width="400" height="80" rx="12" fill="#f7fbf9" stroke="#26383d" stroke-width="3"/><rect width="100" height="80" rx="12" class="green"/><rect x="100" width="100" height="80" class="green"/><rect x="200" width="100" height="80" class="green"/><rect x="300" width="100" height="80" class="green"/><line x1="100" y1="0" x2="100" y2="80" class="line"/><line x1="200" y1="0" x2="200" y2="80" class="line"/><line x1="300" y1="0" x2="300" y2="80" class="line"/></g>
<g transform="translate(70 245)"><rect width="400" height="80" rx="12" fill="#f7fbf9" stroke="#26383d" stroke-width="3"/><rect width="100" height="80" rx="12" class="orange"/><rect x="100" width="100" height="80" class="orange"/><rect x="200" width="100" height="80" class="orange"/><line x1="100" y1="0" x2="100" y2="80" class="line"/><line x1="200" y1="0" x2="200" y2="80" class="line"/><line x1="300" y1="0" x2="300" y2="80" class="line"/></g>
</g>
<g transform="translate(815 245)"><rect width="635" height="360" rx="24" class="panel"/><text x="36" y="60" class="h2">Je décompose</text>
<g class="math-expression"><g transform="translate(70 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">7</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">4</text></g><text x="122.44" y="145" class="num"> = </text><g transform="translate(199.72 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">4</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">4</text></g><text x="252.16" y="145" class="num"> + </text><g transform="translate(329.44 145)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">3</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">4</text></g></g><g class="math-expression"><g transform="translate(70 215)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">7</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">4</text></g><text x="122.44" y="215" class="num"> = 1 + </text><g transform="translate(302.76 215)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">3</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">4</text></g></g><text x="70" y="285" class="body">La première unité est complète.</text><text x="70" y="325" class="body">Il reste encore trois quarts.</text>
</g>
<g transform="translate(170 660)"><rect width="1260" height="105" rx="24" class="panel"/><text x="36" y="47" class="h2">À retenir</text><text x="36" y="84" class="body">Une fraction peut etre plus grande que 1 : il faut alors utiliser plusieurs unités.</text></g>
</svg>

After

Width:  |  Height:  |  Size: 4.8 KiB

View File

@@ -0,0 +1,16 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#e2ebe6;stroke-width:2;filter:drop-shadow(0 10px 24px rgba(22,42,45,.10))}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:2}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:58px;font-weight:800;fill:#074f4b}.subtitle{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:26px;font-weight:700;fill:#1e3540}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:24px;fill:#1d3038}.small{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:19px;fill:#2d4148}.num{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:64px;font-weight:800;fill:#074f4b}.orange{fill:#e78232}.blue{fill:#1d78b5}.line{stroke:#26383d;stroke-width:4;stroke-linecap:round}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/>
<text x="800" y="116" text-anchor="middle" class="title">Comparer des fractions simples</text>
<text x="800" y="160" text-anchor="middle" class="subtitle">Même unité, parts égales, puis je compare</text>
<line x1="430" y1="194" x2="1170" y2="194" stroke="#dbe8e3" stroke-width="4"/>
<g transform="translate(120 245)"><rect width="620" height="360" rx="24" class="soft"/><text x="34" y="60" class="h2">Même dénominateur</text>
<g class="math-expression"><g transform="translate(70 130)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">3</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">5</text></g><text x="122.44" y="130" class="num"> &lt; </text><g transform="translate(199.72 130)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">4</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">5</text></g></g>
<g transform="translate(75 175)"><rect width="430" height="58" rx="10" fill="#f7fbf9" stroke="#26383d" stroke-width="3"/><rect width="86" height="58" rx="10" class="orange"/><rect x="86" width="86" height="58" class="orange"/><rect x="172" width="86" height="58" class="orange"/><line x1="86" y1="0" x2="86" y2="58" class="line"/><line x1="172" y1="0" x2="172" y2="58" class="line"/><line x1="258" y1="0" x2="258" y2="58" class="line"/><line x1="344" y1="0" x2="344" y2="58" class="line"/></g>
<g transform="translate(75 265)"><rect width="430" height="58" rx="10" fill="#f7fbf9" stroke="#26383d" stroke-width="3"/><rect width="86" height="58" rx="10" class="blue"/><rect x="86" width="86" height="58" class="blue"/><rect x="172" width="86" height="58" class="blue"/><rect x="258" width="86" height="58" class="blue"/><line x1="86" y1="0" x2="86" y2="58" class="line"/><line x1="172" y1="0" x2="172" y2="58" class="line"/><line x1="258" y1="0" x2="258" y2="58" class="line"/><line x1="344" y1="0" x2="344" y2="58" class="line"/></g>
</g>
<g transform="translate(815 245)"><rect width="635" height="360" rx="24" class="panel"/><text x="36" y="60" class="h2">Même numérateur</text>
<g class="math-expression"><g transform="translate(70 130)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">1</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">2</text></g><text x="122.44" y="130" class="num"> &gt; </text><g transform="translate(199.72 130)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">1</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">4</text></g></g><text x="70" y="195" class="body">Quand on partage en plus de parts,</text><text x="70" y="232" class="body">chaque part est plus petite.</text><text x="70" y="300" class="body">Toujours comparer la meme unité.</text>
</g>
<g transform="translate(170 660)"><rect width="1260" height="105" rx="24" class="panel"/><text x="36" y="47" class="h2">À retenir</text><text x="36" y="84" class="body">A dénominateur égal, le plus grand numérateur donne la plus grande fraction.</text></g>
</svg>

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,13 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#e2ebe6;stroke-width:2;filter:drop-shadow(0 10px 24px rgba(22,42,45,.10))}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:2}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:58px;font-weight:800;fill:#074f4b}.subtitle{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:26px;font-weight:700;fill:#1e3540}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:24px;fill:#1d3038}.num{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:54px;font-weight:800;fill:#074f4b}.orange{fill:#e78232}.line{stroke:#26383d;stroke-width:4;stroke-linecap:round}.tick{stroke:#26383d;stroke-width:3}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/>
<text x="800" y="116" text-anchor="middle" class="title">Ençadrer une fraction</text>
<text x="800" y="160" text-anchor="middle" class="subtitle">Je cherche entre quels entiers elle se trouve</text>
<line x1="430" y1="194" x2="1170" y2="194" stroke="#dbe8e3" stroke-width="4"/>
<g transform="translate(125 245)"><rect width="1350" height="360" rx="24" class="soft"/><g class="math-expression"><text x="36" y="60" class="h2">Exemple : </text><g transform="translate(192.8 60)" class="fraction-g"><text x="14" y="-9.52" text-anchor="middle" class="h2">7</text><line x1="0" y1="1.12" x2="28" y2="1.12" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="16.24" text-anchor="middle" class="h2">3</text></g></g>
<g class="math-expression"><g transform="translate(790 125)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">6</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">3</text></g><text x="842.44" y="125" class="num"> = 2</text></g><g class="math-expression"><g transform="translate(790 195)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">9</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">3</text></g><text x="842.44" y="195" class="num"> = 3</text></g><g class="math-expression"><text x="790" y="270" class="num">2 &lt; </text><g transform="translate(893.04 270)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">7</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">3</text></g><text x="945.48" y="270" class="num"> &lt; 3</text></g>
<line x1="100" y1="230" x2="670" y2="230" class="line"/><path d="M670 230 L648 219 L648 241 Z" fill="#26383d"/>
<g transform="translate(120 0)"><line x1="0" y1="195" x2="0" y2="265" class="tick"/><text x="0" y="300" text-anchor="middle" class="body">0</text><line x1="150" y1="195" x2="150" y2="265" class="tick"/><text x="150" y="300" text-anchor="middle" class="body">1</text><line x1="300" y1="195" x2="300" y2="265" class="tick"/><text x="300" y="300" text-anchor="middle" class="body">2</text><line x1="450" y1="195" x2="450" y2="265" class="tick"/><text x="450" y="300" text-anchor="middle" class="body">3</text><line x1="350" y1="210" x2="350" y2="250" class="tick"/><circle cx="350" cy="230" r="15" class="orange"/><g class="math-expression"><g transform="translate(333 175)" class="fraction-g"><text x="14" y="-8.16" text-anchor="middle" class="body">7</text><line x1="0" y1="0.96" x2="28" y2="0.96" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="13.92" text-anchor="middle" class="body">3</text></g></g></g>
</g>
<g transform="translate(170 660)"><rect width="1260" height="105" rx="24" class="panel"/><text x="36" y="47" class="h2">À retenir</text><text x="36" y="84" class="body">Je compare la fraction aux fractions qui valent les entiers voisins.</text></g>
</svg>

After

Width:  |  Height:  |  Size: 4.1 KiB

View File

@@ -0,0 +1,12 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#e2ebe6;stroke-width:2;filter:drop-shadow(0 10px 24px rgba(22,42,45,.10))}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:2}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:58px;font-weight:800;fill:#074f4b}.subtitle{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:26px;font-weight:700;fill:#1e3540}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:24px;fill:#1d3038}.num{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:58px;font-weight:800;fill:#074f4b}.orange{fill:#e78232}.blue{fill:#1d78b5}.green{fill:#2f9246}.line{stroke:#26383d;stroke-width:4;stroke-linecap:round}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/>
<text x="800" y="116" text-anchor="middle" class="title">Additionner des fractions simples</text>
<text x="800" y="160" text-anchor="middle" class="subtitle">Si les dénominateurs sont les mêmes, les parts ont la meme taille</text>
<line x1="430" y1="194" x2="1170" y2="194" stroke="#dbe8e3" stroke-width="4"/>
<g transform="translate(120 245)"><rect width="640" height="360" rx="24" class="soft"/><text x="34" y="60" class="h2">Exemple</text><g class="math-expression"><g transform="translate(80 130)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">2</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">7</text></g><text x="132.44" y="130" class="num"> + </text><g transform="translate(209.72 130)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">3</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">7</text></g><text x="262.16" y="130" class="num"> = </text><g transform="translate(339.44 130)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">5</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">7</text></g></g>
<g transform="translate(70 210)"><rect width="490" height="70" rx="10" fill="#f7fbf9" stroke="#26383d" stroke-width="3"/><rect width="70" height="70" rx="10" class="orange"/><rect x="70" width="70" height="70" class="orange"/><rect x="140" width="70" height="70" class="blue"/><rect x="210" width="70" height="70" class="blue"/><rect x="280" width="70" height="70" class="blue"/><line x1="70" y1="0" x2="70" y2="70" class="line"/><line x1="140" y1="0" x2="140" y2="70" class="line"/><line x1="210" y1="0" x2="210" y2="70" class="line"/><line x1="280" y1="0" x2="280" y2="70" class="line"/><line x1="350" y1="0" x2="350" y2="70" class="line"/><line x1="420" y1="0" x2="420" y2="70" class="line"/></g>
</g>
<g transform="translate(825 245)"><rect width="625" height="360" rx="24" class="panel"/><text x="36" y="60" class="h2">La règle</text><text x="65" y="135" class="body">Je garde le dénominateur.</text><text x="65" y="180" class="body">J'ajoute ou je retire</text><text x="65" y="218" class="body">seulement les numérateurs.</text><g class="math-expression"><g transform="translate(65 290)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">6</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">8</text></g><text x="117.44" y="290" class="num"> - </text><g transform="translate(194.72 290)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">2</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">8</text></g><text x="247.16" y="290" class="num"> = </text><g transform="translate(324.44 290)" class="fraction-g"><text x="14" y="-15.64" text-anchor="middle" class="num">4</text><line x1="0" y1="1.84" x2="28" y2="1.84" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="26.68" text-anchor="middle" class="num">8</text></g></g></g>
<g transform="translate(170 660)"><rect width="1260" height="105" rx="24" class="panel"/><text x="36" y="47" class="h2">À retenir</text><text x="36" y="84" class="body">Avant de çalculer, je vérifie que les dénominateurs sont identiques.</text></g>
</svg>

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@@ -0,0 +1,13 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
<defs><style>.bg{fill:#f6f5ef}.panel{fill:#fff;stroke:#e2ebe6;stroke-width:2;filter:drop-shadow(0 10px 24px rgba(22,42,45,.10))}.soft{fill:#eef7f4;stroke:#c9dfd8;stroke-width:2}.title{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:58px;font-weight:800;fill:#074f4b}.subtitle{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:26px;font-weight:700;fill:#1e3540}.h2{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:30px;font-weight:800;fill:#074f4b}.body{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:24px;fill:#1d3038}.num{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:58px;font-weight:800;fill:#074f4b}.small{font-family:"Trebuchet MS",Verdana,sans-serif;font-size:19px;fill:#2d4148}.orange{fill:#e78232}.green{fill:#2f9246}.line{stroke:#26383d;stroke-width:4;stroke-linecap:round}</style></defs>
<rect class="bg" width="1600" height="900"/><rect x="56" y="42" width="1488" height="816" rx="34" class="panel"/>
<text x="800" y="116" text-anchor="middle" class="title">Trouver une fraction d'une quantité</text>
<text x="800" y="160" text-anchor="middle" class="subtitle">Je partage, puis je prends les parts demandées</text>
<line x1="430" y1="194" x2="1170" y2="194" stroke="#dbe8e3" stroke-width="4"/>
<g transform="translate(120 245)"><rect width="640" height="360" rx="24" class="soft"/><g class="math-expression"><text x="34" y="60" class="h2">Exemple : </text><g transform="translate(190.8 60)" class="fraction-g"><text x="14" y="-9.52" text-anchor="middle" class="h2">3</text><line x1="0" y1="1.12" x2="28" y2="1.12" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="16.24" text-anchor="middle" class="h2">4</text></g><text x="224.8" y="60" class="h2"> de 20</text></g>
<g transform="translate(80 125)"><rect width="440" height="90" rx="12" fill="#f7fbf9" stroke="#26383d" stroke-width="3"/><rect width="110" height="90" rx="12" class="orange"/><rect x="110" width="110" height="90" class="orange"/><rect x="220" width="110" height="90" class="orange"/><line x1="110" y1="0" x2="110" y2="90" class="line"/><line x1="220" y1="0" x2="220" y2="90" class="line"/><line x1="330" y1="0" x2="330" y2="90" class="line"/></g>
<text x="80" y="270" class="body">20 partage en 4 parts : chaque part vaut 5.</text><text x="80" y="315" class="body">Je prends 3 parts : 15.</text>
</g>
<g transform="translate(825 245)"><rect width="625" height="360" rx="24" class="panel"/><text x="36" y="60" class="h2">La méthode</text><text x="70" y="130" class="num">20 ÷ 4 = 5</text><text x="70" y="205" class="num">5 x 3 = 15</text><text x="70" y="285" class="body">Le dénominateur partage.</text><text x="70" y="323" class="body">Le numérateur dit combien prendre.</text></g>
<g transform="translate(170 660)"><rect width="1260" height="105" rx="24" class="panel"/><text x="36" y="47" class="h2">À retenir</text><g class="math-expression"><text x="36" y="84" class="body">Pour trouver </text><g transform="translate(210.72 84)" class="fraction-g"><text x="14" y="-8.16" text-anchor="middle" class="body">3</text><line x1="0" y1="0.96" x2="28" y2="0.96" stroke="#074f4b" stroke-width="4" stroke-linecap="round"/><text x="14" y="13.92" text-anchor="middle" class="body">4</text></g><text x="244.72" y="84" class="body"> d&#x27;une quantité : je divise par 4, puis je multiplie par 3.</text></g></g>
</svg>

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

@@ -0,0 +1,12 @@
# SVG - CM1 - Fractions
Ce dossier contient les fiches SVG de lecon du sous-theme `01B_fractions`.
Regles :
- une fiche SVG = une micro-competence ;
- format `1600 x 900` ;
- pas de professeur integre ;
- texte court et lisible ;
- schemas mathematiques simples ;
- aucune superposition texte/schema.