Vitrine pour l'informatique en lycée
Topic outline
-
Cet espace regroupe les activités réalisés pour des enseignements de NSI et de l'algorithmique au lycée. L'objectif est de permettre la réutilisation de ces contenu par d'autres enseignants.
L'organisation est basé sur le programme de NSI du bulletin officiel de l'éducation nationale (de première ainsi que de terminale). Les recoupements avec le programme de mathématiques sont indiqués en dessous de chaque section à l'aide d'un tableau récapitulatif de la forme suivante :
Contenus / Capacités attendues / Activités associés Contenu du bulletin officiel pour les premières NSI
Contenu du bulletin officiel pour les terminales NSI (-vide-)
Recoupements avec l'enseignement de mathématiques de seconde
Recoupements avec l'enseignement de mathématiques de première
En cliquant sur le titre des sections, vous aurez accès aux activités et éventuellement une description succincte.
Vous trouverez principalement deux types d'activités interactives :
- Les quiz ( ) - exemple : Bases sur les listes
- Les activités de programmation python à évaluation automatique () - exemple : Bienvenue !
État en décembre 2019 : Aucune activité n'est encore présente pour l'année de terminale.
| Ajout [juillet 2020] d'activités pour les Terminales sur les Graphes principalement. -
-
Contenus Capacités attendues
Activités associées
Écriture d’un entier positif dans une base b⩾2 Passer de la représentation d’une base dans une autre : Conversion de bases - numération Shadok , Test de conversion décimale/binaire
: Conversion bases 4,10 - numération Shadok
Représentation binaire d’un entier relatif Évaluer le nombre de bits nécessaires à l’écriture en base 2 d’un entier, de la somme ou du produit de deux nombres entiers. Utiliser le complément à 2 : Représentation binaire des entiers relatifs
: Addition binaire
Représentation approximative des nombres réels : notion de nombre flottant Calculer sur quelques exemples la représentation de nombres réels : 0.1, 0.25 ou
Valeurs booléennes: 0, 1. Opérateurs booléens: and, or, not. Expressions booléennes Dresser la table d’une expression booléenne Représentation d’un texte en machine. Exemples des encodages ASCII, ISO-8859-1, Unicode Identifier l’intérêt des différents systèmes d’encodage. Convertir un fichier texte dans différents formats d’encodage : Représentation d'un texte : encodage ASCII et Unicode
-
Contenus Capacités attendues
Activités associées p-uplets, p-uplets nommés Écrire une fonction renvoyant un p-uplet de valeurs : Calcul d'I.M.C Tableau indexé, tableau donné en compréhension Lire et modifier les éléments d’un tableau grâce à leurs index. Construire un tableau par compréhension. Utiliser des tableaux de tableaux pour représenter des matrices : notation a[i][j]. Itérer sur les éléments d’un tableau. : Bases sur les listes
: Tables de multiplication (v1)Dictionnaires par clés et valeurs Construire une entrée de dictionnaire. Itérer sur les éléments d’un dictionnaire. : Traduction morse
-
Contenus Capacités attendues
Activités associées
Programme Terminale Structures de données, interface et implémentation. Spécifier une structure de données par son interface. Distinguer interface et implémentation. Écrire plusieurs implémentations d’une même structure de données. :
Vocabulaire de la programmation objet :
classes, attributs, méthodes, objets.Écrire la définition d’une classe. Accéder aux attributs et méthodes d'une classe.
: Stockage de données , Construction d'arbres binaires
Listes, piles, files :
structures linéaires. Dictionnaires, index et clé.Distinguer des structures par le jeu des méthodes qui les caractérisent. Choisir une structure de données adaptée à la situation à modéliser. Distinguer la recherche d’une valeur dans une liste et dans un dictionnaire. : Stockage de données
Arbres : structures hiérarchiques. Arbres binaires : nœuds, racines, feuilles, sous-arbres gauches, sous-arbres droits. Identifier des situations nécessitant une structure de données arborescente. Évaluer quelques mesures des arbres binaires (taille, encadrement de la hauteur, etc.). : Les arbres - structure et parcours
Graphes : structures relationnelles. Sommets, arcs, arêtes, graphes orientés ou non-orientés. Modéliser des situations sous forme de graphes. Écrire les implémentations correspondantes d’un graphe : matrice d’adjacence, liste de successeurs/de prédécesseurs. Passer d’une représentation à une autre. : Un graphe, c'est quoi ? , Graphe non orienté , Graphe orienté , Cycle/circuit , Chemin/chaîne , Problèmes de graphe ? , Graphe orienté ou non orienté ? , Graphe planaire , Lecture d'un graphe sous forme matricielle
Parcours possible Graphes et programmation orienté objet (POO)
-
Contenus Capacités attendues
Activités associées Indexation de tables Importer une table depuis un fichier texte tabulé ou un fichier CSV : Inventaire bibliothèque Recherche dans une table Rechercher les lignes d’une table vérifiant des critères exprimés en logique propositionnelle. : Habitants des étoiles Tri d’une table Trier une table suivant une colonne : Inventaire bibliothèque2 Fusion de tables Construire une nouvelle table en combinant les données de deux tables : Petit guide des Restaurants
-
Contenus Capacités attendues
Activités associées
Programme Première Constructions élémentaires Mettre en évidence un corpus de constructions élémentaires : Notion de variable , Affectation niveau 2 , Questions sur les types et utilisation de input()
: Bienvenue ! , Incrémentation simple , Le Duplicateur , Tables de multiplication (v2) , Conversions monétaires , Prix d'une commande de livres , Majeur ou mineur ? , Transport en automobile et rejets de CO2
Diversité et unité des langages de programmation Repérer, dans un nouveau langage de programmation,les traits communs et les traits particuliers à ce langage
Spécification Prototyper une fonction. Décrire les préconditions sur les arguments. Décrire des postconditions sur les résultats
Mise au point de programmes Utiliser des jeux de tests
Utilisation de bibliothèques Utiliser la documentation d’une bibliothèque
Programme Terminale Notion de programme en tant que donnée.Calculabilité, décidabilité Comprendre que tout programme est aussi une donnée. Comprendre que la calculabilité ne dépend pas du langage de programmation utilisé. Montrer, sans formalisme théorique, que le problème de l’arrêt est indécidable. :
Récursivité Écrire un programme récursif. Analyser le fonctionnement d’un programme récursif : Récursive Fibonacci , Parcours d'arbres
Modularité Utiliser des API (Application Programming Interface)ou des bibliothèques.Exploiter leur documentation. Créer des modules simples et les documenter. :
Programme Mathématiques seconde Programme simple - : Bienvenue ! , Incrémentation simple , Le Duplicateur , Conversions monétaires , Majeur ou mineur ? , Transport en automobile et rejets de CO2
-
Contenus Capacités attendues
Activités associées
Programme Première Parcours séquentiel d’un tableau Écrire un algorithme de recherche d’une occurrence sur des valeurs de type quelconque. Écrire un algorithme de recherche d’un extremum, de calcul d’une moyenne. : Capteur de température
Tris par insertion, par sélection Écrire un algorithme de tri. Décrire un invariant de boucle qui prouve la correction des tris par insertion, par sélection.
Algorithme des k plus proches voisins Écrire un algorithme qui prédit la classe d’un élément en fonction de la classe majoritaire de ses k plus proches voisins. : Iris de Fisher
Recherche dichotomique dans un tableau trié Montrer la terminaison de la recherche dichotomique à l’aide d’un variant de boucle. : Une recherche dichotomique
Algorithmes gloutons Résoudre un problème grâce à un algorithme glouton. : Rendu de monnaie , sac à dos
Programme Terminale Algorithmes sur les arbres binaires et sur les arbres binaires de recherche Calculer la taille et la hauteur d’un arbre. Parcourir un arbre de différentes façons (ordres infixe, préfixe ou suffixe ; ordre en largeur d’abord). Rechercher une clé dans un arbre de recherche, insérer une clé : Parcours d'arbres
Algorithmes sur les graphes Parcourir un graphe en profondeur d’abord, en largeur d’abord. Repérer la présence d’un cycle dans un graphe. Chercher un chemin dans un graphe.
Parcours possible [Term.] Graphes et programmation orienté objet (POO)
-
Vous trouverez ci-dessous des QCM de sujet d'E3C publiés. Ils ont été obtenu à l'aide de la banque de question de genumsi.inria.fr