Toggle navigation sidebar
Toggle in-page Table of Contents
Introduction à la Programmation Impérative
Info 111 «Programmation Impérative»
Informations générales
Me contacter pour avoir de l’aide
Case départ
Exercices de programmation en ligne (PL)
Logiciels
Logiciels: Jupyter
Logiciels Info 111: installation de Jupyter »
I. Avec le sous-système Linux (Windows 10)
Programme hebdomadaire
Semaine 1: Introduction à l’informatique et premiers programmes
Programmation impérative (Info 111)
Prise en main des carnets Jupyter
Laby, niveau 0: démonstration
Laby, niveau 1a: à vous de jouer!
Laby, niveau 1b: Oh le caillou !
Laby, niveau 1c: Encore un !
Laby, niveau 2a: Que c’est loin …
Laby, niveau 2b: Le couloir des cailloux
Laby, niveau 2c: Zig-Zag
Laby, niveau 2d: Le Zig-Zag des cailloux
Laby, niveau 3a: Ahhh des toiles!
Laby, niveau 3b: Toiles et cailloux
Laby, niveau 4a: La spirale infernale
Laby, niveau 4b: Par où passer ?
Laby: Compter les cailloux
Chou chèvre loup
Les cruches
Laby: C’est fou!
Laby, en Python
Premier exercice
Avec un caillou
Un caillou dans un couloir
On regarde devant soi
Beaucoup de cailloux
En serpent
Si si si !
Le Caillou et la toile
La Spirale
Les Toiles
Comptons les cailloux
Encore un serpent
Toiles Et cailloux
Variables
Compter
This is Crazy
Challenge
Fabriquer
Semaine 2: Programmation impérative: premier aperçu
Premiers éléments de programmation impérative
TP : Jupyter : mode Édition vs mode Commande
TP : valeurs, types et variables
TP : variables et affectations
TP : conditions et premières fonctions
TP : retour sur l’exercice 3 du TD
TP : retour sur l’exercice 4 du TD
Semaine 3 : Mémoire, conditionnelles et boucles simples
Mémoire, conditionnelles et itératives
Mémoire et variables
Les types entiers en C++
Cours et exercices: les instructions conditionnelles enchaînées
Les instructions itératives
Conditionnelles : erreurs classiques
TP : Jupyter : le noyau
TP : prélude : affichages
TP : les boucles
while
TP : les boucles
for
TP : dessins géométriques ♣
TP : nombres premiers et dates ♣
Semaine 4: Fonctions
Fonctions
TP : Jupyter : les deux types de cellules
TP : premières fonctions
TP : implanter la fonction exponentielle (1/5)
TP : implanter la fonction exponentielle (2/5)
TP : implanter la fonction exponentielle (3/5)
TP : implanter la fonction exponentielle (4/5)
TP : implanter la fonction exponentielle (5/5)
TP : Point de Chute ♣
TP : Implanter les fonctions sinus et cosinus ♣
Semaine 5: Tableaux
Tableaux, compilation, portée des variables
Premiers programmes compilés en C++
Tableaux (introduction)
Portée des variables : variables locales et globales
TP : l’interface de JupyterLab
TP : premiers programmes compilés en C++
TP : tableaux : prise en main
TP : tableaux : implantation de fonctions classiques
TP : exercices supplémentaires : tableaux, chaînes de caractères,
switch
TP : suite de Fibonacci
TP : fractions unitaires et périodicité
Semaine 6 : Modèle de mémoire, collections, consolidation
Modèle d’exécution, collections
Exemple jouet de piratage par débordement
Modèle de mémoire et tableaux
Collections et boucle «pour tout … dans …»
TP : Jupyter : se débarrasser de sa souris
TP : le jeu de Yams
TP : boucles imbriquées
Semaine 7 : tableaux à deux dimensions
Tableaux à deux dimensions, exceptions
Tableaux à deux dimensions
Signaler et gérer les situations exceptionnelles : les exceptions
TP : tableaux 2D
Semaine 8 : fichiers
Fichiers et flux
Fichiers, lecture, écriture
État d’un fichier (ou d’un flux)
Lecture depuis le clavier
Notion de flux de données
Lecture et écriture dans des chaînes de caractères
Jupyter : l’indentation
Semaine 9: débogage, tests, projet
Débogage et Tests
Semaine 10: modularité, compilation séparée
Modularité et compilation séparée
Cycle de vie d’un programme
Modularité, compilation séparée
Digressions : surcharge, templates, espaces de noms, …
Conclusion
Premiers graphiques avec Jupyter
Projet
Rapport de projet
Données libres
Rapport de projet
Mixmo
en duplicata
Travail en binôme
Solutions
À propos des solutions
Semaine 1: Introduction à l’informatique et premiers programmes
Prise en main des carnets Jupyter
Laby, niveau 0: démonstration
Laby, niveau 1a: à vous de jouer!
Laby, niveau 1b: Oh le caillou !
Laby, niveau 1c: Encore un !
Laby, niveau 2a: Que c’est loin …
Laby, niveau 2b: Le couloir des cailloux
Laby, niveau 2c: Zig-Zag
Laby, niveau 2d: Le Zig-Zag des cailloux
Laby, niveau 3a: Ahhh des toiles!
Laby, niveau 3b: Toiles et cailloux
Laby, niveau 4a: La spirale infernale
Laby, niveau 4b: Par où passer ?
Laby: Compter les cailloux
Chou chèvre loup
Les cruches
Laby: C’est fou!
Laby, en Python
Premier exercice
Avec un caillou
Un caillou dans un couloir
On regarde devant soi
Beaucoup de cailloux
En serpent
Si si si !
Le Caillou et la toile
La Spirale
Les Toiles
Comptons les cailloux
Encore un serpent
Toiles Et cailloux
Variables
Compter
This is Crazy
Challenge
Fabriquer
Semaine 2: Programmation impérative: premier aperçu
Premiers éléments de programmation impérative
TP : Jupyter : mode Édition vs mode Commande
TP : valeurs, types et variables
TP : variables et affectations
TP : conditions et premières fonctions
TP : retour sur l’exercice 3 du TD
TP : retour sur l’exercice 4 du TD
Semaine 3 : Mémoire, conditionnelles et boucles simples
Mémoire, conditionnelles et itératives
Mémoire et variables
Les types entiers en C++
Cours et exercices: les instructions conditionnelles enchaînées
Les instructions itératives
Conditionnelles : erreurs classiques
TP : Jupyter : le noyau
TP : prélude : affichages
TP : les boucles
while
TP : les boucles
for
TP : dessins géométriques ♣
TP : nombres premiers et dates ♣
Semaine 4: Fonctions
Fonctions
TP : Jupyter : les deux types de cellules
TP : premières fonctions
TP : implanter la fonction exponentielle (1/5)
TP : implanter la fonction exponentielle (2/5)
TP : implanter la fonction exponentielle (3/5)
TP : implanter la fonction exponentielle (4/5)
TP : implanter la fonction exponentielle (5/5)
TP : Point de Chute ♣
TP : Implanter les fonctions sinus et cosinus ♣
Semaine 5: Tableaux
Premiers programmes compilés en C++
Tableaux (introduction)
Portée des variables : variables locales et globales
TP : l’interface de JupyterLab
TP : premiers programmes compilés en C++
Prélude: un peu plus de Jupyter
TP : tableaux : prise en main
TP : tableaux : implantation de fonctions classiques
TP : exercices supplémentaires : tableaux, chaînes de caractères,
switch
TP : suite de Fibonacci
TP : fractions unitaires et périodicité
Semaine 6 : Modèle de mémoire, collections, consolidation
Modèle d’exécution, collections
Exemple jouet de piratage par débordement
Modèle de mémoire et tableaux
Collections et boucle «pour tout … dans …»
TP : Jupyter : se débarrasser de sa souris
TP : le jeu de Yams
TP : boucles imbriquées
Semaine 7 : tableaux à deux dimensions
Tableaux à deux dimensions, exceptions
Tableaux à deux dimensions
Signaler et gérer les situations exceptionnelles : les exceptions
TP : tableaux 2D
Semaine 8 : fichiers
Fichiers et flux
Fichiers, lecture, écriture
État d’un fichier (ou d’un flux)
Lecture depuis le clavier
Notion de flux de données
Lecture et écriture dans des chaînes de caractères
Jupyter : l’indentation
Semaine 9: débogage, tests, projet
Débogage et Tests
Semaine 10: modularité, compilation séparée
Modularité et compilation séparée
Cycle de vie d’un programme
Modularité, compilation séparée
Digressions : surcharge, templates, espaces de noms, …
Conclusion
Premiers graphiques avec Jupyter
Le coin des enseignants
Info 111 «Introduction à Programmation Impérative» (Site enseignants)
Infrastructure
Absences enseignants
Rédaction des fiches de TD et TP
Conventions de codage
Solutions annotées pour les enseignants
Semaine 1: Introduction à l’informatique et premiers programmes
Prise en main des carnets Jupyter
Laby, niveau 0: démonstration
Laby, niveau 1a: à vous de jouer!
Laby, niveau 1b: Oh le caillou !
Laby, niveau 1c: Encore un !
Laby, niveau 2a: Que c’est loin …
Laby, niveau 2b: Le couloir des cailloux
Laby, niveau 2c: Zig-Zag
Laby, niveau 2d: Le Zig-Zag des cailloux
Laby, niveau 3a: Ahhh des toiles!
Laby, niveau 3b: Toiles et cailloux
Laby, niveau 4a: La spirale infernale
Laby, niveau 4b: Par où passer ?
Laby: Compter les cailloux
Chou chèvre loup
Les cruches
Laby: C’est fou!
Laby, en Python
Premier exercice
Avec un caillou
Un caillou dans un couloir
On regarde devant soi
Beaucoup de cailloux
En serpent
Si si si !
Le Caillou et la toile
La Spirale
Les Toiles
Comptons les cailloux
Encore un serpent
Toiles Et cailloux
Variables
Compter
This is Crazy
Challenge
Fabriquer
Semaine 2: Programmation impérative: premier aperçu
Premiers éléments de programmation impérative
TP : Jupyter : mode Édition vs mode Commande
TP : valeurs, types et variables
TP : variables et affectations
TP : conditions et premières fonctions
TP : retour sur l’exercice 3 du TD
TP : retour sur l’exercice 4 du TD
Semaine 3 : Mémoire, conditionnelles et boucles simples
Mémoire, conditionnelles et itératives
Mémoire et variables
Les types entiers en C++
Cours et exercices: les instructions conditionnelles enchaînées
Les instructions itératives
Conditionnelles : erreurs classiques
TP : Jupyter : le noyau
TP : prélude : affichages
TP : les boucles
while
TP : les boucles
for
TP : dessins géométriques ♣
TP : nombres premiers et dates ♣
Semaine 4: Fonctions
Fonctions
TP : Jupyter : les deux types de cellules
TP : premières fonctions
TP : implanter la fonction exponentielle (1/5)
TP : implanter la fonction exponentielle (2/5)
TP : implanter la fonction exponentielle (3/5)
TP : implanter la fonction exponentielle (4/5)
TP : implanter la fonction exponentielle (5/5)
TP : Point de Chute ♣
TP : Implanter les fonctions sinus et cosinus ♣
Semaine 5: Tableaux
Tableaux, compilation, portée des variables
Premiers programmes compilés en C++
Tableaux (introduction)
Portée des variables : variables locales et globales
TP : l’interface de JupyterLab
TP : premiers programmes compilés en C++
TP : tableaux : prise en main
TP : tableaux : implantation de fonctions classiques
TP : exercices supplémentaires : tableaux, chaînes de caractères,
switch
TP : suite de Fibonacci
TP : fractions unitaires et périodicité
Semaine 6 : Modèle de mémoire, collections, consolidation
Modèle d’exécution, collections
Exemple jouet de piratage par débordement
Modèle de mémoire et tableaux
Collections et boucle «pour tout … dans …»
TP : Jupyter : se débarrasser de sa souris
TP : le jeu de Yams
TP : boucles imbriquées
Semaine 7 : tableaux à deux dimensions
Tableaux à deux dimensions, exceptions
Tableaux à deux dimensions
Signaler et gérer les situations exceptionnelles : les exceptions
TP : tableaux 2D
Semaine 8 : fichiers
Fichiers et flux
Fichiers, lecture, écriture
État d’un fichier (ou d’un flux)
Lecture depuis le clavier
Notion de flux de données
Lecture et écriture dans des chaînes de caractères
Jupyter : l’indentation
Semaine 9: débogage, tests, projet
Débogage et Tests
Semaine 10: modularité, compilation séparée
Modularité et compilation séparée
Cycle de vie d’un programme
Modularité, compilation séparée
Digressions : surcharge, templates, espaces de noms, …
Conclusion
Premiers graphiques avec Jupyter
.ipynb
.md
.pdf
TP : retour sur l’exercice 4 du TD
TP : retour sur l’exercice 4 du TD
#