Atelier d'algorithmique

Mardi 1er février

Wi-Fi 🔗

  • Nom du réseau : Formation
  • Mot de passe : wifiFormation11!

Sommaire

  1. Textes officiels
  2. Scratch et Python
  3. Exemples d'activités
  4. De Scratch à Python
  5. Mémo Markdown
  6. Mémo $\LaTeX$
  7. À vous de jouer !
  8. Ressources

1. Textes officiels

Au collège

  • Attendus de fin de cycle : écrire, mettre au point, exécuter un programme simple.
  • Connaissances
    • Notions d’algorithme et de programme
    • Notion de variable informatique
    • Déclenchement d’une action par un événement
    • Séquences d’instructions, boucles, instructions conditionnelles

En classe de Seconde

  • Utiliser les variables et les instructions élémentaires
    • Variables informatiques de type entier, booléen, flottant, chaîne de caractères
    • Affectation (notée $\gets$)
    • Séquence d'instructions
    • Instruction conditionnelle
    • Boucle bornée (for), boucle non bornée (while)
  • Notion de fonction
    • Fonctions à un ou plusieurs arguments
    • Fonction renvoyant un nombre aléatoire, série statistique obtenue par la répétition de l'appel d'une telle fonction

En classe de Première

  • Les listes Python
    • Générer une liste
    • Manipuler des éléments d'une liste
    • Parcourir une liste
    • Itérer sur les éléments d'une liste

🐱 2. Scratch et Python 🐍

Scratch

Thonny et Basthon (Python)

  • Thonny
    • Multiplateforme windows mac tux
    • Interface simple
    • Exécution « pas à pas »
  • Basthon
    • Multiplateforme windows mac tux android chromeos
    • Aucune installation

3. Exemples d'activités 📒

Activité 1 (Seconde)
Dans un magasin de reprographie, les 20 premières photocopies sont facturées 0,10 € et les suivantes à 0,08 €.
  1. Calculer le prix de 5, 10 et de 25 photocopies.
  2. Si $n$ désigne le nombre de photocopies et $p(n)$ le prix à payer, en euros, exprimer $p(n)$ en distinguant deux cas.
  3. On souhaite écrire une fonction en Python afin d'automatiser ce calcul. Compléter le code donné ci-dessous :

def prix(n):
    if n <= 20:
        a_payer = ...
    else:
        a_payer = ...
    return ...
	    
Activité 2 (Seconde)
Un astronome a observé un corps céleste A et 24 jours plus tard un corps céleste B. Le corps A a une période de révolution de 180 jours et le corps B une période de 186 jours. Il se demande s'il pourra les observer tous les deux le même jour. On nomme $m$ le nombre de révolutions de A et $n$ le nombre de révolutions de B avant de pouvoir les observer tous les deux le même jour pour la 1re fois.
  1. Expliquer pourquoi $m$ et $n$ doivent vérifier l'égalité $4+30m=31n$.
  2. Recopier et compléter l'algorithme ci-dessous pour obtenir la valeur de $m$.
  3. $m\gets 1$
    Tant que $4+30m\;...$
            $m\gets m+1$
    Fin Tant que
  4. Le traduire en Python.
  5. Conclure.

4. De Scratch à Python

SofusPyScratch
  • Script Blockly ➡️ Python
  • Module tortue
  • Listes

5. Mémo Markdown

Titres


	# Titre de niveau 1
	## Titre de niveau 2
	### Titre de niveau 3
	#### Titre de niveau 4
	##### Titre de niveau 5
	###### Titre de niveau 6
		
... ### Titre de niveau 3 #### Titre de niveau 4 ...

Emphase


		*Texte en italique*
		**Texte en gras**
		~~Texte barré~~
		
*Texte en italique* **Texte en gras** ~~Texte barré~~

Listes à puce


- Élément 1
- Élément 2
  - Sous-élément 1
  - Sous élément 2
- Élément 3 
		
- Élément 1 - Élément 2 - Sous-élément 1 - Sous élément 2 - Élément 3

Listes ordonnées


1. Élément 1
2. Élément 2
   1. Sous-élément 1
   2. Sous élément 2
3. Élément 3 
		
1. Élément 1 2. Élément 2 1. Sous-élément 1 2. Sous élément 2 3. Élément 3

Listes à cocher


- [x] Élément 1
- [ ] Élément 2
  - [x] Sous-élément 2.1
  - [ ] Sous-élément 2.2
- [ ] Élément 3
		
- [x] Élément 1 - [ ] Élément 2 - [x] Sous-élément 2.1 - [ ] Sous-élément 2.2 - [ ] Élément 3

Citations


> Voici une citation  
> sur plusieurs lignes
		
 Voici une citation
 sur plusieurs lignes

Séparateurs horizontaux


Séparateur

---

horizontal
		
Séparateur --- horizontal

Liens


[Texte du lien](https://www.google.com)

[Texte avec un titre au survol](https://www.google.com "Titre au survol")
		
[Texte du lien](https://www.google.com) [Texte avec un titre au survol](https://www.google.com "Titre au survol")

Images


	    ![logo Markdown](img/logo_markdown.png)
		
![logo Markdown](img/logo_markdown.png)

Tableaux

Utiliser un site tel que Markdown Tables Generator

Colonne 1 (à gauche) | Colonne 2 (centrée) | Colonne 3 (à droite)
:--- | :---: | ---:
Cellule 1.1 | Cellule 1.2 | Cellule 1.3
Cellule 2.1 | Cellule 2.2 | Cellule 2.3
		
Colonne 1 (à gauche) | Colonne 2 (centrée) | Colonne 3 (à droite) :--- | :---: | ---: Cellule 1.1 | Cellule 1.2 | Cellule 1.3 Cellule 2.1 | Cellule 2.2 | Cellule 2.3

Code en ligne


`print("Hello World !")`
		
`print("Hello World !")`

Bloc de code


```python
def factorielle(n):
    if n == 0:
	return 1
    else:
	return n * factorielle(n - 1)
```
		
```python def factorielle(n): if n == 0: return 1 else: return n * factorielle(n - 1) ```

Mathématiques avec $\LaTeX$


Mode en ligne :  
On cherche les solutions de l'équation (E) : $x^2 + 3x -7 = 0$.

Mode bloc (display) :  
On trouve :

$$x = \frac{-3 \pm \sqrt{37}}{2}.$$
		
Mode en ligne : On cherche les solutions de l'équation (E) : $x^2 + 3x -7 = 0$. Mode bloc (display) : On trouve : $$x = \frac{-3 \pm \sqrt{37}}{2}.$$

6. Mémo $\LaTeX$

Relations


$\pi \approx 3.14159$
$1 \neq 2$
$0 < 1$
$2 > 1$
$x \leq 2$
$x \geq 1$
		
$\pi \approx 3.14159$ $1 \neq 2$ $0 < 1$ $2 > 1$ $x \leq 2$ $x \geq 1$

Racines


$$f(x) = \sqrt[3]{2x} + \sqrt{x-2}$$
		
$$f(x) = \sqrt[3]{2x} + \sqrt{x-2}$$

Indices et exposants


Pour tout entier naturel $n$, $u_{n+1}=u_n + n^2$.
		
Pour tout entier naturel $n$, $u_{n+1}=u_n + n^2$.

Fractions


$\dfrac{\pi^2}{6}$
		
$\dfrac{\pi^2}{6}$

Intégrales


$\int_0^{+\infty}\dfrac{\sin(x)}{x}dx$
$\displaystyle\int_0^{+\infty}\dfrac{\sin(x)}{x}dx$
$$\int_0^{+\infty}\dfrac{\sin(x)}{x}dx$$
		
$\int_0^{+\infty}\dfrac{\sin(x)}{x}dx\ \ \ \ \ $ $\displaystyle\int_0^{+\infty}\dfrac{\sin(x)}{x}dx$ $$\int_0^{+\infty}\dfrac{\sin(x)}{x}dx$$

Sommes


$\sum_{k=1}^{+\infty}\dfrac{1}{k^2}$
$\displaystyle\sum_{k=1}^{+\infty}\dfrac{1}{k^2}$
$$\sum_{k=1}^{+\infty}\dfrac{1}{k^2}$$
		
$\sum_{k=1}^{+\infty}\dfrac{1}{k^2}\ \ \ \ \ \ \ \ $ $\displaystyle\sum_{k=1}^{+\infty}\dfrac{1}{k^2}$ $$\sum_{k=1}^{+\infty}\dfrac{1}{k^2}$$

Lettres grecques


$\alpha$ $\beta$ $\gamma$ $\Gamma$ $\delta$ $\Delta$ $\omicron$ 
		
$\alpha\ \ $ $\beta\ \ $ $\gamma\ \ $ $\Gamma\ \ $ $\delta\ \ $ $\Delta\ \ $ $\omicron$

7. À vous de jouer ! 🛝

simulation 1 dé avec Scratch

from random import randint

def simulation(n):
    liste = [0, 0, 0, 0, 0, 0]
    for i in range(n):
        de = randint(1, 6)
        liste[de - 1] = liste[de - 1] + 1
    return liste
	      

8. Ressources 📚