Skip to content

Commit

Permalink
Still bug...
Browse files Browse the repository at this point in the history
  • Loading branch information
yves-chevallier committed Sep 24, 2024
1 parent 6c9b973 commit 1734acb
Show file tree
Hide file tree
Showing 10 changed files with 3,995 additions and 630 deletions.
92 changes: 46 additions & 46 deletions docs/appendix/unit.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,30 +10,30 @@ Les fiches d'unités sont les documents de référence pour les cours d'info1 et

### Panification du semestre d'hiver

| Semaine | Académique | Cours | Labo |
|---------|------------|-------------------------|---------------------------|
| 38 | 1 | Introduction | 00 Familiarisation |
| 39 | 2 | Numération | 01 Premier pas en C |
| 40 | 3 | Fondements du C | 02 Équation quadratique |
| 41 | 4 | Variables, opérateurs | 03 Fléchettes |
| 42 | 5 | Types, entrées sorties | 04 Pneus |
| 43 | Vacances d'automne |
| 44 | 6 | Entrées sorties | 05 Monte-Carlo |
| 45 | 7 | **TE1** | 06 Tables Multiplications |
| 46 | 8 | Structure de contrôles | 07 Chaînes (par équipe) |
| 47 | 9 | Fonctions | 08 Nombre d'Armstrong |
| 48 | 10 | Tableaux et structures | 09 Sudoku |
| 49 | 11 | Programmes et processus | |
| 50 | 12 | Algorithmique | **Labo Test** |
| 51 | 13 | Pointeurs | 10 Galton |
| 52 | Vacances de Noël |
| 1 | |
| 2 | 14 | Ergonomie et dialogues | 12 Tableau des scores |
| 3 | 15 | **TE2** | |
| 4 | 16 | Exercices de révision | |
| 5 | **Préparation Examens** |
| 6 | **Examens** |
| 7 | Relâches |
| Semaine | Académique | Cours | Labo |
| ------- | ----------------------- | ----------------------- | ------------------------- |
| 38 | 1 | Introduction | 00 Familiarisation |
| 39 | 2 | Numération | 01 Premier pas en C |
| 40 | 3 | Fondements du C | 02 Équation quadratique |
| 41 | 4 | Variables, opérateurs | 03 Fléchettes |
| 42 | 5 | Types, entrées sorties | 04 Pneus |
| 43 | Vacances d'automne |
| 44 | 6 | Entrées sorties | 05 Monte-Carlo |
| 45 | 7 | **TE1** | 06 Tables Multiplications |
| 46 | 8 | Structure de contrôles | 07 Chaînes (par équipe) |
| 47 | 9 | Fonctions | 08 Nombre d'Armstrong |
| 48 | 10 | Tableaux et structures | 09 Sudoku |
| 49 | 11 | Programmes et processus | |
| 50 | 12 | Algorithmique | **Labo Test** |
| 51 | 13 | Pointeurs | 10 Galton |
| 52 | Vacances de Noël |
| 1 | |
| 2 | 14 | Ergonomie et dialogues | 12 Tableau des scores |
| 3 | 15 | **TE2** | |
| 4 | 16 | Exercices de révision | |
| 5 | **Préparation Examens** |
| 6 | **Examens** |
| 7 | Relâches |

## Informatique 2

Expand All @@ -43,27 +43,27 @@ Les fiches d'unités sont les documents de référence pour les cours d'info1 et

### Panification du semestre de printemps

| Semaine | Académique | Cours | Labo |
|---------|------------|-------------------------|---------------------------|
| 8 | 1 | Introduction | GitHub - WSL |
| 9 | 2 | Fichiers | Proust (partie 1) |
| 10 | 3 | Allocation dynamique | Proust (partie 2) |
| 11 | 4 | Allocation dynamique | Météo (partie 1) |
| 12 | 5 | Compilation séparée | Météo (partie 2) |
| 13 | 6 | Préprocesseur | Tableau dynamique (1/2) |
| 14 | 7 | Unions, champs de bits | Tableau dynamique (2/2) |
| 15 | 8 | Usage bibliothèques | Stéganographie |
| 16 | Vacances de Pâques |
| 17 | 9 | **TE1** | Wave (partie 1) |
| 18 | 10 | Algorithmique Big-O | Wave (partie 2) |
| 19 | 11 | Tris | Quick-Sort / Merge-Sort |
| 20 | 12 | Queues et piles | Tries |
| 21 | 13 | Sockets | **Labo Test** |
| 22 | 14 | **TE2** | Shunting-yard |
| 23 | 15 | Arbres binaires | Tries (partie 1) |
| 24 | 16 | Exercices de révision | Tries (partie 2) |
| 25 | Préparation Examens |
| 26 | Examens |
| Semaine | Académique | Cours | Labo |
| ------- | ------------------- | ---------------------- | ----------------------- |
| 8 | 1 | Introduction | GitHub - WSL |
| 9 | 2 | Fichiers | Proust (partie 1) |
| 10 | 3 | Allocation dynamique | Proust (partie 2) |
| 11 | 4 | Allocation dynamique | Météo (partie 1) |
| 12 | 5 | Compilation séparée | Météo (partie 2) |
| 13 | 6 | Préprocesseur | Tableau dynamique (1/2) |
| 14 | 7 | Unions, champs de bits | Tableau dynamique (2/2) |
| 15 | 8 | Usage bibliothèques | Stéganographie |
| 16 | Vacances de Pâques |
| 17 | 9 | **TE1** | Wave (partie 1) |
| 18 | 10 | Algorithmique Big-O | Wave (partie 2) |
| 19 | 11 | Tris | Quick-Sort / Merge-Sort |
| 20 | 12 | Queues et piles | Tries |
| 21 | 13 | Sockets | **Labo Test** |
| 22 | 14 | **TE2** | Shunting-yard |
| 23 | 15 | Arbres binaires | Tries (partie 1) |
| 24 | 16 | Exercices de révision | Tries (partie 2) |
| 25 | Préparation Examens |
| 26 | Examens |

## Modalités d'évaluation et de validation

Expand Down Expand Up @@ -126,4 +126,4 @@ La note finale est donnée par l'expression :
### Directives

- En cas d'absence à un quiz, la note de 1.0 est donnée.
- En cas de plagiat, le [dilemme du prisonnier](https://fr.wikipedia.org/wiki/Dilemme_du_prisonnier#:~:text=Le%20dilemme%20du%20prisonnier%2C%20%C3%A9nonc%C3%A9,est%20jou%C3%A9%20qu'une%20fois.) s'applique.
- En cas de plagiat, le [dilemme du prisonnier](https://fr.wikipedia.org/wiki/Dilemme_du_prisonnier) s'applique.
2 changes: 1 addition & 1 deletion docs/course-c/00-preface/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,7 @@ La version imprimée sera néanmoins figée à un moment donné, mais la version

## Colophon

Ce livre est écrit en [Markdown]([wiki:markdown](https://fr.wikipedia.org/wiki/Markdown)) et généré en HTML par [MkDocs](https://www.mkdocs.org/). Le thème utilisé est [Material for MkDocs](https://squidfunk.github.io/mkdocs-material/). Les sources sont disponibles sur [GitHub]([wiki:github](https://fr.wikipedia.org/wiki/GitHub)) et l'hébergement est assuré par [GitHub Pages](https://pages.github.com/).
Ce livre est écrit en [Markdown](https://fr.wikipedia.org/wiki/Markdown) et généré en HTML par [MkDocs](https://www.mkdocs.org/). Le thème utilisé est [Material for MkDocs](https://squidfunk.github.io/mkdocs-material/). Les sources sont disponibles sur [GitHub](https://fr.wikipedia.org/wiki/GitHub) et l'hébergement est assuré par [GitHub Pages](https://pages.github.com/).

La plupart des illustrations sont réalisées avec [Draw.io](https://www.draw.io/), un outil de dessin vectoriel en ligne. Les schémas sont rendus dans le navigateur avec `GraphViewer`. Les diagrammes utilisent la technologie [Mermaid](https://mermaid-js.github.io/mermaid/#/). Les autres sources d'images sont issues en grande partie de [Wikimedia Commons](https://commons.wikimedia.org/) et [Wikipedia](https://www.wikipedia.org/).

Expand Down
2 changes: 1 addition & 1 deletion docs/course-c/05-introduction/programming.md
Original file line number Diff line number Diff line change
Expand Up @@ -463,7 +463,7 @@ Pour mieux se situer dans l'histoire de l'informatique, voici quelques dates cl

1801

: [Métier à tisser Jacquard](https://fr.wikipedia.org/wiki/M%C3%A9tier_%C3%A0_tisser_Jacquard) programmable avec des cartes perforées.
: [Métier à tisser Jacquard](https://fr.wikipedia.org/wiki/M%C3%A9tier_Jacquard) programmable avec des cartes perforées.

1837

Expand Down
2 changes: 1 addition & 1 deletion docs/course-c/10-numeration/numbers.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ Si on résume, la solution proposée qui utilise un bit de signe pose deux probl

### Complément à un

Le **[[complément à un]]** est une méthode plus maline utilisée dans les premiers ordinateurs comme le [CDC 6600](https://fr.wikipedia.org/wiki/Control_Data_6600) (1964) ou le [UNIVAC 1107](https://en.wikipedia.org/wiki/UNIVAC_1100/2200_series) (1962). Il existe également un bit de signe, mais il est implicite.
Le **[[complément à un]]** est une méthode plus maline utilisée dans les premiers ordinateurs comme le [CDC 6600](https://fr.wikipedia.org/wiki/Control_Data_6600) ([[1964]]) ou le UNIVAC 1107 ([[1962]]). Il existe également un bit de signe, mais il est implicite.

Le complément à un tire son nom de sa définition générique nommée *radix-complement* ou complément de base et s'exprime par :

Expand Down
2 changes: 1 addition & 1 deletion docs/course-c/15-fundations/operators.md
Original file line number Diff line number Diff line change
Expand Up @@ -982,7 +982,7 @@ Selon la précédence de chaque opérateur ainsi que son associativité on a :

C'est une notation très utilisée en informatique pour les calculatrices et les compilateurs car elle permet de simplifier l'écriture des expressions mathématiques, et surtout s'affranchir du problème des priorités d'opérateurs.

L'algorithme de [Shunting Yard](https://en.wikipedia.org/wiki/Shunting-yard_algorithm) permet de convertir une expression en notation infixée en une expression en notation polonaise inversée.
L'algorithme de [Shunting Yard](https://fr.wikipedia.org/wiki/Algorithme_Shunting-yard) permet de convertir une expression en notation infixée en une expression en notation polonaise inversée.

### Associativité

Expand Down
16 changes: 8 additions & 8 deletions docs/course-c/40-algorithms/popular-algorithms/huffman.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Le codage de Huffman est un algorithme de compression sans perte qui permet de réduire la taille des fichiers en utilisant des codes de longueur variable pour représenter les caractères. L'algorithme repose sur l'idée que les caractères les plus fréquents dans un texte peuvent être représentés par des codes plus courts, tandis que les caractères les moins fréquents sont représentés par des codes plus longs.

Il est utilisé dans de nombreux formats de fichiers comme le format [PNG](https://fr.wikipedia.org/wiki/Portable_Network_Graphics), [JPEG](https://fr.wikipedia.org/wiki/JPEG) et [MP3](https://fr.wikipedia.org/wiki/MPEG-1/2_Audio_Layer_3).
Il est utilisé dans de nombreux formats de fichiers comme le format [PNG](https://fr.wikipedia.org/wiki/Portable_Network_Graphics), [JPEG](https://fr.wikipedia.org/wiki/JPEG) et [MP3](https://fr.wikipedia.org/wiki/MP3).

Prenons le texte `ABRACADABRA`. Il y a des lettres qui reviennent plus souvent que d'autres et des lettres de l'alphabet qui sont absentes. Pourquoi donc représenter chaque caractère sur 1 octet ? On pourrait utiliser un code de longueur variable. Par exemple, la lettre `A` pourrait être représentée par `0`, la lettre `B` par `10` et la lettre `R` par `11`. Il faudrait également définir une table de correspondance pour décoder le texte. C'est le principe de l'abre de Huffman.

Expand All @@ -17,7 +17,7 @@ On commence par compter la fréquence de chaque caractère. On obtient :
Table: Fréquence de Huffman

| Caractère | Fréquence |
|-----------|-----------|
| --------- | --------- |
| A | 5 |
| B | 2 |
| R | 2 |
Expand Down Expand Up @@ -101,12 +101,12 @@ graph TD
Pour générer les codes, on parcourt l'arbre de Huffman en partant de la racine. On ajoute un `0` à chaque fois qu'on descend à gauche et un `1` à chaque fois qu'on descend à droite. Les noeuds fusionnés sont des noeuds internes, on ne les prend pas en compte.

| Caractère | Code |
|-----------|-----------|
| A | 0 |
| R | 10 |
| B | 111 |
| C | 1100 |
| D | 1101 |
| --------- | ---- |
| A | 0 |
| R | 10 |
| B | 111 |
| C | 1100 |
| D | 1101 |


### Encodage du texte
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Algorithme de Shunting Yard

L'algorithme de [Shunting Yard](https://fr.wikipedia.org/wiki/Algorithme_de_Shunting-yard) est un algorithme de parsing d'expression mathématique. Il permet de transformer une expression mathématique en notation infixée en une expression postfixée. L'algorithme a été inventé par Edsger Dijkstra en 1961.
L'algorithme de [Shunting Yard](https://fr.wikipedia.org/wiki/Algorithme_Shunting-yard) est un algorithme de parsing d'expression mathématique. Il permet de transformer une expression mathématique en notation infixée en une expression postfixée. L'algorithme a été inventé par Edsger Dijkstra en 1961.

Imaginez que vous ayez une expression mathématique sous forme d'une chaîne de caractères :

Expand Down
16 changes: 10 additions & 6 deletions hooks/latex/renderer.py
Original file line number Diff line number Diff line change
Expand Up @@ -141,12 +141,16 @@ def __init__(self, output_path=Path("build"), config={}):
]

# Wiki links
with open("links.yml") as f:
self.links = yaml.load(f, Loader=yaml.FullLoader)
self.wikimap = {
value["url"]: {"key": key, **value}
for key, value in self.links.get("wikipedia", {}).items()
}
link_file = Path("links.yml")
if link_file.exists():
with open(link_file, "r") as f:
self.links = yaml.load(f, Loader=yaml.FullLoader)
self.wikimap = {}
for key, value in self.links.get("wikipedia", {}).items():
self.wikimap[key] = value
else:
log.warning("No links file found yet, skipping wikipedia links")
self.wikimap = {}

# Metadata
self.abbreviations = {}
Expand Down
Loading

0 comments on commit 1734acb

Please sign in to comment.