© Ministère de l’enseignement supérieur et de la recherche, 2013 http://www.ens
© Ministère de l’enseignement supérieur et de la recherche, 2013 http://www.enseignementsup-recherche.gouv.fr 1 Programmes des classes préparatoires aux Grandes Ecoles Filière : scientifique Voies : Mathématiques, physique et sciences de l'ingénieur (MPSI) Physique, chimie et sciences de l’ingénieur (PCSI) Physique, technologie et sciences de l’ingénieur (PTSI) Technologie, sciences de l’ingénieur (TSI) Technologie, physique, chimie (TPC) Mathématiques et physique (MP) Physique et chimie (PC) Physique et technologie (PT) Physique et sciences de l’ingénieur (PSI) Discipline : Informatique Première et seconde années © Ministère de l’enseignement supérieur et de la recherche, 2013 http://www.enseignementsup-recherche.gouv.fr 2 Informatique Voies : TSI, MP, PC, PT, TPC, PSI I Objectifs de formation 1 Généralités L’informatique, omniprésente dans les différentes sphères de l’entreprise, de la recherche, des services, de la culture et des loisirs, repose sur des mécanismes fondamentaux devant être maîtrisés par les futurs ingénieurs, enseignants et chercheurs qui auront à s’en servir pour agir en connaissance de cause dans leur vie professionnelle. La rapide évolution des outils informatiques et des sciences du numérique dans tous les secteurs de l’ingénierie (industrielle, logicielle et des services) et de la recherche rend indispensable un enseignement de l’informatique spécifiquement conçu pour l’étudiant de CPGE scientifiques. Celui-ci devra pouvoir dans sa vie professionnelle communiquer avec les informaticiens de son entreprise ou de son laboratoire, participer aux prises de décision en matière de systèmes d’information, posséder des connaissances de base nécessaires à la compréhension des défaillances et des risques informatiques, ainsi que des solutions permettant d’y remédier, et exploiter à bon escient les résultats de calculs numériques. Pour ce faire, il devra comprendre des concepts tels que la précision numérique, la faisabilité, l’efficacité, la qualité et les limites de solutions informatiques, ce qui requiert une certaine familiarité avec les architectures matérielles et logicielles, les systèmes d’exploitation, le stockage des données et les réseaux. Cette diversité d’exigences impose une formation à la fois fondamentale et appliquée. Au niveau fondamental, on se fixe pour objectif la maîtrise d’un certain nombre de concepts de base, et avant tout, la conception rigoureuse d’algorithmes et le choix de représentations appropriées des données. Ceci impose une expérience pratique de la programmation et de la manipulation informatique de données, notamment d’origine expérimentale ou industrielle, et parfois disponibles en ligne. Au niveau des applications, la rapidité d’évolution des technologies logicielles et matérielles renforce l’intérêt de présenter des concepts fondamentaux pérennes sans s’attacher outre mesure à la description de technologies, protocoles ou normes actuels. En revanche, la formation s’attachera à contextualiser le plus souvent possible les activités pratiques en s’appuyant sur les autres disciplines scientifiques : chimie, physique, mathématiques, sciences technologiques et de l’ingénieur. © Ministère de l’enseignement supérieur et de la recherche, 2013 http://www.enseignementsup-recherche.gouv.fr 3 2 Compétences visées Cet enseignement doit permettre de développer les compétences suivantes : Analyser et modéliser un problème, une situation ; Imaginer et concevoir une solution algorithmique modulaire, utilisant des méthodes de programmation, des structures de données appropriées pour le problème étudié ; Traduire un algorithme dans un langage de programmation moderne et généraliste ; Spécifier rigoureusement les modules ou fonctions ; Évaluer, contrôler, valider des algorithmes et des programmes ; Communiquer à l’écrit ou à l’oral, une problématique, une solution ou un algorithme, une documentation. L’étude et la maîtrise de quelques algorithmes fondamentaux, l’utilisation de structures de données adaptées et l’apprentissage de la syntaxe du langage de programmation choisi permettent de développer des méthodes (ou paradigmes) de programmation appropriés, fiables et efficaces : programmation impérative, approche descendante, programmation structurée, utilisation de bibliothèques logicielles, notions élémentaires de complexité en temps ou en mémoire, documentation des programmes en vue de leur réutilisation et possibles modifications ultérieures. La pratique régulière de la résolution de problèmes par une approche algorithmique et des activités de programmation qui en résultent constitue un aspect essentiel de l’apprentissage de l’informatique. Il est éminemment souhaitable que les exemples choisis ainsi que certains exercices d'application soient directement inspirés par les enseignements de physique et chimie, de mathématiques, et de sciences industrielles et de l’ingénieur. Enfin, les compétences acquises en informatique ont vocation à participer pleinement à l’élaboration des travaux d’initiative personnelle encadrée (T.I.P.E.) et à être réutilisées au sein des autres enseignements scientifiques. © Ministère de l’enseignement supérieur et de la recherche, 2013 http://www.enseignementsup-recherche.gouv.fr 4 II Programme 1. Introduction Première partie du semestre 1 1.a/ Présentation du système informatique utilisé et éléments d’architecture des ordinateurs Une ou deux séances introductives seront consacrées à présenter et à familiariser les étudiants • aux principaux composants d’une machine numérique telle que l’ordinateur personnel, une tablette, etc : sources d’énergie, mémoire vive, mémoire de masse, unité centrale, périphériques d’entrée-sortie, ports de communication avec d’autres composants numériques (aucune connaissance particulière des composants cités n’est cependant exigible), • à la manipulation d’un système d’exploitation (gestion des ressources, essentiellement : organisation des fichiers, arborescence, droits d’accès, de modification, entrées/sorties), • à la manipulation d’un environnement de développement. La principale capacité développée dans cette partie de la formation est : • manipuler en mode « utilisateur » les principales fonctions d’un système d’exploitation et d’un environnement de développement. 1.b/ Représentation des nombres et conséquences Il s’agit de familiariser les étudiants avec les problèmes liés à la représentation finie des nombres et à la discrétisation des modèles numériques. Les calculatrices peuvent servir de support d’étude de ces questions. Contenus Précisions et commentaires Principe de la représentation des nombres entiers en mémoire. On introduit ou rappelle brièvement le principe de la représentation binaire ainsi que ses limites. Principe de la représentation des nombres réels en mémoire. On se limite à la définition de l’écriture en virgule flottante normalisée et on explique le codage d’un nombre réel en général sans © Ministère de l’enseignement supérieur et de la recherche, 2013 http://www.enseignementsup-recherche.gouv.fr 5 entrer dans les cas particuliers comme les non-nombres « not a number » ou les infinis. Conséquences de la représentation limitée des nombres réels en machine. On illustre, sur des exemples simples, pouvant être illustrés au moyen d’une calculatrice, les phénomènes de dépassement de capacité (ou « overflow ») de séquences de calculs conduisant à des résultats faux et erreurs d’arrondis. On illustre aussi le problème de la comparaison à zéro, par exemple dans une équation du second degré. Les principales capacités développées dans cette partie de la formation sont : • appréhender les limitations intrinsèques à la manipulation informatique des nombres, • initier un sens critique au sujet de la qualité et de la précision des résultats de calculs numériques sur ordinateur. 2. Algorithmique et programmation I Seconde partie du semestre 1 2.a/ Outils employés Au premier semestre, l’enseignement se fonde sur un environnement de programmation (langage et bibliothèques) basé sur un langage interprété largement répandu et à source libre. Au moment de la conception de ce programme, l’environnement sélectionné est Python. Les travaux pratiques conduiront à éditer et manipuler fréquemment des codes sources et des fichiers ; c’est pourquoi un environnement de développement efficace doit être choisi et utilisé. Les étudiants doivent être familiarisés avec les tâches de création d’un fichier source, d’édition d’un programme, de gestion des fichiers, d’exécution et d’arrêt forcé d’un programme. Avant la fin du premier trimestre, un environnement de calcul scientifique est présenté et utilisé en lien avec l’étude des problèmes de simulation. Afin d’en permettre rapidement une utilisation dans d’autres enseignements, une séance de présentation de cet environnement sera prévue en fin de premier trimestre. Au moment de la conception de ce programme, l’environnement sélectionné est Scilab. L’étude approfondie de ces divers outils et environnements n’est pas une fin en soi et n’est pas un attendu du programme. © Ministère de l’enseignement supérieur et de la recherche, 2013 http://www.enseignementsup-recherche.gouv.fr 6 Des textes réglementaires ultérieurs pourront mettre à jour ces choix d’outils et d’environnements en fonction des évolutions et des besoins. 2.b/ Algorithmique Les compétences en matière d’algorithmique et de programmation étant profondément liées, il est souhaitable que ces deux sujets soient abordés de concert, même si pour des raisons de clarté d’exposition ils sont ici séparés. L’introduction à l’algorithmique contribue à apprendre à l’étudiant à analyser, à spécifier et à modéliser de manière rigoureuse une situation ou un problème. Cette démarche algorithmique procède par décomposition en sous-problèmes et par affinements successifs. L’accent étant porté sur le développement raisonné d’algorithmes, leur implantation dans un langage de programmation n’intervient qu’après une présentation organisée de la solution algorithmique, indépendante du langage choisi. Les invariants de boucles sont introduits pour s’assurer de la correction des segments itératifs. Une attention particulière doit être apportée au choix de structures de données appropriées. La notion de complexité d’algorithmes (en distinguant la complexité en mémoire, la complexité en temps dans le meilleur et dans le pire des cas) est introduite sur des exemples simples. Pour faire mieux comprendre la notion d’algorithme et sa portée universelle, on s’appuie sur un petit nombre d’algorithmes simples, classiques et d’usage universel, que les étudiants doivent savoir expliquer et programmer, voire modifier selon les besoins et contraintes des problèmes étudiés. Contenus Précisions et commentaires Recherche dans une liste, recherche du maximum dans une liste de nombres, calcul de la uploads/Science et Technologie/ programme-informatique-2013-amp-2014.pdf
Documents similaires
-
24
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Mai 16, 2022
- Catégorie Science & technolo...
- Langue French
- Taille du fichier 0.0623MB