06 – Structures de données

  • Exercices sur les variables locales et globales
  • Méthodes
  • Structures de données
  • Collections
  • Tuples
  • Chaînes de caractères
  • Listes
  • Ensembles
  • Opérations sur les collections
  • Itération
  • Conversions

Pour la semaine prochaine :

Attention : changement de planning :

05 – Fonctions

  1. Correction des exercices n°1, n°2 et n°3 de la feuille sur les fonctions
  2. Retour sur le TP n°4
  3. Exercices autour de la fonction print
  4. Passage par valeur
  5. Variables locales et globales
  • TP n°5 : instructions conditionnelles.

Pour la semaine prochaine :

 

Installer Python et un IDE sur sa machine

Au lycée nous utilisons Pyzo et le plus simple est de faire de même chez vous. Sinon, vous pouvez aussi utiliser Sypder. Dans tous les cas, il faudra bien veiller à choisir une version de Python supérieure à 3.5.

Pour installer Python et Pyzo il suffit de suivre les instructions données sur la page d’installation de Pyzo :

  1. Installer Pyzo.
  2. Installer Miniconda (utiliser le chemin par défaut).
  3. Lancer Pyzo et vérifier dans la fenêtre interactive que la version de Python est bien supérieure à 3.5.0. Si ce n’est pas le cas, aller dans Menu > Shell > Edit shell configuration et vérifier que Pyzo a bien choisi l’environnement Python3 que vous venez d’installer via Miniconda. Cochez aussi la case Utiliser IPython s’il est disponible.
  4. Installer IPython et pycodestyle (besoin d’une connexion internet). Dans la fenêtre interactive, entrer la commande :
    pip install ipython pycodestyle
  5. Il n’est pas nécessaire d’installer les modules scientifiques pour l’instant, mais vous pouvez installer ceux qui sont proposés.

Dans Pyzo, que vous pouvez mettre en Français (Menu > Settings > Select Language), vérifiez dans Menu > Fichier que l’indentation est fixée à 4 espaces (et non une tabulation) et que l’analyse syntaxique est activée pour python3. Je vous conseille aussi de mettre les mêmes raccourcis qu’au lycée (Menu > Paramètres > Éditer les raccourcis) : dans Exécuter, F5 pour Démarrer le script, F9 pour Exécuter la sélection et F8 pour Exécuter la cellule.

Vous voilà prêts à terminer le TP n°4 !

[Facultatif et plus difficile] Nous avons changé les couleurs du thème par défaut au lycée. Pour faire de même chez vous, il faut mettre ce fichier base.py à la place de celui qui se trouve dans le dossier dont il est question dans le message que vous obtenez en lançant, dans Pyzo, Menu > Paramètres > Éditer les styles de code …, qui se termine par quelque chose comme :

pyzo/codeeditor/base.py

 

04 – Tuples et fonctions

  1. Types composés
  2. Construction d’un tuple
  3. Déconstruction d’un tuple
  4. Fonctions : motivations
  5. Syntaxe et définition d’une fonction
  6. Arguments
  7. Valeur de retour
  • TP n°4 : environnement de développement, tuples, fonctions et bibliothèques.

Pour la semaine prochaine :

  • Installer Python !
  • Terminer les parties 1, 2, 3 et 4 du TP n°4. Vous pouvez aussi chercher les exercices de la partie 5, après avoir terminé le point suivant
  • Chercher sérieusement les exercices n°1, n° 2 et n°3 de la feuille d’exercices sur les fonctions
  • Vérifier vos solutions du TP n°3 à l’aide du corrigé.

03 – Principes des langages de programmation

  1. Langages de programmation
  2. Compilation vs interprétation
  3. Petit historique
  4. Le langage Python
  5. Les autres langages
  6. Expressions
  7. Types de base en Python
  8. Variables (environnement, initialisation, affectation)
  9. Échanger le contenu de deux variables
  • TP n°3 : compilation/interprétation, découverte de Python, types et opérations (entiers, flottants, booléens), variables

Pour la semaine prochaine :

  • Terminer le TP n°3 et préparer les exercices de la partie 5

Si vous n’avez pas (encore) Python chez vous, vous pouvez utiliser en ligne le Jupyter Notebook

  • File -> New Notebook -> Python 3
  • Shift + Entrée pour valider une cellule

Compléments : vous pouvez regarder la vidéo L’importance des langages en informatique donnée par Gérard Berry (en particulier le passage 21m40s à 27m27s). Il y a aussi cet article sur Interstice.

02 – Traitement de l’information et systèmes d’exploitation

  1. Traitement de l’information
  2. Comment l’informatique unifie et transforme tout
  3. Bits, octets et préfixes binaires
  4. Numérisation et encodages
  5. Systèmes d’exploitation
  6. Arborescence des fichiers
  7. Droits d’accès
  • TP n°2 : Système d’exploitation : découverte de la console, processus et mémoire, arborescence des fichiers et gestion des droits

Pour la semaine prochaine

Compléments : vous pouvez regarder (en entier pour les passionnés ou simplement l’extrait 40m13s à 41m15s) le cours de Gérard Berry La photographie numérique, un parfait exemple de la puissance de l’informatique

 

01 – Introduction et architecture des ordinateurs

  1. Introduction à l’informatique
  2. Pourquoi enseigner l’informatique ?
  3. Qu’est-ce que l’informatique ?
  4. Une petite histoire de l’informatique
  5. Architecture d’un ordinateur
  6. L’architecture de type Von Neumann
  • TP n°1 : Montage d’un ordinateur, analyse des composants, architecture matérielle

Pour la semaine prochaine, regarder les deux vidéos suivantes :

Compléments :

12 – Programmation dynamique (suite)

  1. Multiplication chaînée de matrices
  2. Approche bottom-up vs top-down (mémoïsation)
  3. Généralités
  • DM n°5 avec évaluation
  • TD n°5 (exercice n°6)
  • TD n°6 (exercices n°3 et n°4)

Dernier devoir surveillé, concours blanc, mercredi 06/06/18 : bien réviser les TP n°7, n°8 et n°9 et le TD n°6.

 

11 – Programmation dynamique

  1. Structures enregistrements mutables
  2. Fermetures et effets de bords
  3. Principes généraux de la programmation dynamique
  4. Calcul des coefficients binomiaux
  5. Problème de découpe de planches
  6. Multiplication chaînée de matrices
  • DM n°4 avec évaluation

Il y aura un deuxième DS sur machine mercredi 23/05/18 de 15h à 18h au laboratoire informatique.

Pour le 28/05/18 :

  • Terminer la feuille de TD n°6.
  • Lire le polycopié sur la programmation dynamique et chercher le DM n°5.

10 – Tableaux en Caml

  1. La structure de données tableau
  2. Représentation mémoire
  3. Implémentation en Caml
  4. Parcours d’un tableau
  5. Copie d’un tableau
  6. Tableaux multi-dimensionnels
  • TP n°8 sur la programmation impérative en Caml
  • TP n°9 sur les tableaux

Pour la semaine prochaine :

  • Terminer les TP n°8 et n°9 et comparer avec le corrigé.
  • DM n°4