• Aide
  • Eurêkoi Eurêkoi

Livre numérique

L'Informatique (vraiment) Pour Tous en classes préparatoires aux grandes écoles - La programmation en Python, SQL et les algorithmes dévoilés de A à Z : La programmation en Python, SQL et les algorithmes dévoilés de A à Z

Auteur(s) : Moreau, Philippe

  • Éditeur(s)
  • Date
    • 2020
  • Notes
    • Cet ouvrage propose toute l’informatique (Python et SQL) conforme au programme de CPGE pour un apprentissage en toute autonomie.Le cours complet explique progressivement les notions et les corrections détaillées des exercices permettent une préparation complète aux concours.
  • Langues
    • Français
  • ISBN
    • 9782340038073
  • Droits
    • copyrighted
  • Résultat de :
  • Quatrième de couverture
    • L'Informatique (vraiment) Pour Tous en classes préparatoires aux grandes écoles

      La programmation en Python, SQL et les algorithmes dévoilés de A à Z

      Ce manuel couvre l'ensemble du programme de l'Informatique Pour Tous (IPT) des classes préparatoires aux grandes écoles scientifiques. Il aborde la programmation en Python et en SQL des deux années de sup et spé, permettant à un étudiant d'aborder les concours des grandes écoles sereinement. Chaque chapitre est construit de sorte que l'étudiant soit plongé dans un cours tel qu'il se déroulerait en classe : il propose des activités ainsi que les notions théoriques et techniques indispensables pour comprendre et assimiler les concepts. Enfin, des exercices d'entraînement et d'application du cours et des algorithmes sont proposés. Tous les exercices sont corrigés de manière très détaillée et sont commentés à la façon dont serait menée une séance de TD. La dernière partie du livre regroupe des devoirs à réaliser en temps limité afin de permettre à l'étudiant de s'évaluer au fur et à mesure de son travail à la manière des DST. Enfin, des sujets de concours corrigés sont aussi proposés, en tant qu'ultime travail de la formation et de préparation.

      Cet ouvrage est conçu pour accompagner et former tous les étudiants de prépa, débutants ou de niveau avancé. Les étudiants autodidactes, en cursus universitaire, les professeurs de lycée désirant se former aux sciences du numérique ainsi que le lecteur curieux d'approfondir ses connaissances en programmation sauront aussi tirer avantage de ce livre.


  • Tables des matières
      • Chapitre 1 : Architecture des machines et systèmes d'exploitation15
      • 1) Les principaux composants d'une machine numérique17
      • a) Hardware et software17
      • b) Les entrées-sorties18
      • c) Le stockage des informations19
      • d) L'unité centrale23
      • e) Le processeur25
      • f) Les mémoires de l'ordinateur27
      • g) Les bus29
      • 2) Les systèmes d'exploitation et les environnements de développement29
      • a) Rôles d'un système d'exploitation30
      • b) Gestion des fichiers34
      • Exercices : architecture des machines et systèmes d'exploitation38
      • Correction exercices : architecture des machines et systèmes d'exploitation41
      • Chapitre 2 : Représentation des nombres et des informations dans la machine physique43
      • 1) Introduction44
      • 2) Bref point de vue électronique45
      • a) Les transistors en régime bloqué et en régime de saturation45
      • b) Donnée de base manipulée par une machine46
      • 3) Représentation d'un nombre dans une base46
      • 4) Représentation des nombres dans une machine52
      • a) Représentation sur une chaîne de n bits fixée52
      • b) Représentation des entiers naturels53
      • c) Convention de la valeur signée53
      • d) Convention du complément à 254
      • e) Convention IEEE 75459
      • f) Cas particuliers de la norme IEEE 75463
      • 5) Erreurs introduites par la représentation des nombres en machine66
      • a) Le dépassement de capacité66
      • b) Les arrondis d'affichage des calculatrices67
      • c) Les arrondis d'affichage de Python69
      • 6) Représentation des caractères74
      • Pour aller plus loin76
      • Exercices : La représentation des nombres en machine81
      • Correction exercices : la représentation des nombres en machine83
      • Chapitre 3 : introduction à la programmation en Python et aux outils de développement97
      • 1) Les langages de programmation97
      • 2) Découverte de Python100
      • a) Installation de l'environnement de développement100
      • b) Description de l'environnement de développement104
      • 3) Bases de la programmation en Python106
      • a) Les types de base et les opérations106
      • b) Utilisation de la console108
      • c) Les variables111
      • d) Les expressions116
      • e) Exécution d'une affectation117
      • f) La comparaison118
      • g) Les instructions119
      • h) Le transtypage121
      • 4) Concevoir un programme123
      • 5) Enregistrer un programme124
      • 6) Les modules127
      • Pour aller plus loin131
      • TP 1 : introduction à la programmation et aux outils de développement142
      • Correction TP1 : introduction à la programmation et aux outils de développement158
      • Chapitre 4 : Listes, conditionnelles et boucles177
      • 1) Les listes177
      • a) Création d'une liste178
      • b) Manipulation des listes180
      • 2) Le type range181
      • 3) Blocs d'instructions183
      • a) Les structures conditionnelles184
      • b) Complément sur les expressions booléennes190
      • c) La boucle for193
      • d) La boucle while196
      • e) break et continue198
      • TP2 : listes, conditions, boucles201
      • Correction TP2 : listes, conditions, boucles209
      • Chapitre 5 : Les fonctions221
      • 1) Introduction221
      • 2) Créer et utiliser une fonction222
      • a) La syntaxe223
      • b) Appel d'une fonction223
      • c) Quelques bonnes pratiques pour les fonctions227
      • d) Variables locales et globales229
      • e) Déroulement d'un programme233
      • 3) Ecrire une fonction lambda236
      • Pour aller plus loin237
      • TP 3 : tuples, dictionnaires, fonctions248
      • Correction TP 3 : tuples, dictionnaires, fonctions257
      • Chapitre 6 : Introduction à l'algorithmique269
      • 1) Correction d'un algorithme270
      • a) La terminaison de boucle270
      • b) Invariant de boucle274
      • 2) Complexité275
      • a) Expérimentation avec un chronomètre276
      • b) Détermination d'un coût277
      • c) Complexité et temps d'exécution280
      • 3) Le pseudo-code281
      • 4) Petits algorithmes universels283
      • a) Recherche du maximum283
      • b) Calcul de la moyenne284
      • c) Calcul de la variance285
      • Pour aller plus loin287
      • TP 4 : introduction aux algorithmes303
      • Correction du TP 4 : introduction aux algorithmes308
      • Chapitre 7 : Algorithmes appliqués à des intervalles. Dichotomie et intégration numérique321
      • 1) Introduction322
      • 2) La dichotomie322
      • a) Principe général322
      • b) Le découpage en intervalles réguliers323
      • 3) Recherche par dichotomie dans un tableau trié323
      • a) Principe de l'algorithme323
      • b) Complexité de l'algorithme327
      • 4) Recherche du zéro d'une fonction continue et monotone329
      • a) Principe329
      • b) Calcul du nombre d'itérations335
      • 5) Calcul numérique d'une intégrale par la méthode des rectangles à gauche336
      • 6) Calcul numérique d'une intégrale par la méthode des rectangles à droite338
      • 7) Calcul numérique d'une intégrale par la méthode des trapèzes340
      • TP 5 : algorithmes appliqués à des intervalles343
      • Correction TP 5 : algorithmes appliqués à des intervalles349
      • Chapitre 8 : Les graphiques et les modules scientifiques359
      • 1) Le module numpy360
      • 2) Les graphiques avec le module matplotlib369
      • a) Principe de base369
      • b) Améliorer l'affichage373
      • Pour aller plus loin377
      • TP 6 : les graphiques et les modules scientifiques385
      • Correction du TP 6 : les graphiques et les modules scientifiques389
      • Chapitre 9 : Recherche du zéro d'une fonction. Méthode de Newton397
      • 1) La méthode de Newton398
      • a) Résoudre numériquement f(x) = 0398
      • b) Résolution de f(x) = c400
      • c) Détermination numérique de la dérivée401
      • 2) Calcul d'une racine carrée par la méthode de Héron402
      • TP 7 : Recherche du zéro d'une fonction404
      • Correction TP 7 : Recherche du zéro d'une fonction406
      • Chapitre 10 : Résoudre numériquement les équations différentielles412
      • 1) Introduction412
      • a) Ce que l'on va chercher412
      • b) Intérêt d'une équation différentielle412
      • c) Principe général de la méthode d'Euler413
      • 2) Equation différentielle d'ordre 1414
      • a) Méthode d'Euler explicite416
      • b) Méthode d'Euler implicite420
      • 3) Equation différentielle d'ordre 2423
      • Pour aller plus loin427
      • TP 8 : Résoudre numériquement les équations différentielles432
      • Correction TP8440
      • Chapitre 11 : matrices, systèmes linéaires, méthode du pivot de Gauss467
      • 1) Introduction468
      • 2) Coder une matrice468
      • 3) Principe de résolution d'un système475
      • 4) Résolution par la méthode du pivot de Gauss477
      • 5) Phase de remontée483
      • 6) Algorithme complet de résolution485
      • Pour aller plus loin487
      • TP 9 : matrices, systèmes linéaires, méthode du pivot de Gauss491
      • Correction TP 9 : matrices, systèmes linéaires, méthode du pivot de Gauss498
      • Chapitre 12 : Les bases de données511
      • 1) Introduction512
      • a) Ce que peut être une base de données512
      • b) Architecture autour d'une base512
      • c) Création d'une base513
      • 2) Le modèle entité-association513
      • 3) Utilisation du modèle relationnel514
      • 4) Requêtes élémentaires de création516
      • 5) Algèbre relationnel518
      • a) Opérations de base518
      • b) Autres opérations522
      • 6) Traduction en SQL525
      • 7) Les fonctions d'agrégation526
      • 8) Un exemple complet526
      • a) Création de la base et ajout des données526
      • b) Utilisation de la base534
      • Pour aller plus loin541
      • TP 10 : les bases de données544
      • Correction TP 10 : les bases de données550
      • Chapitre 13 : La récursivité579
      • 1) Principe de la récursivité580
      • 2) Algorithmes récursifs583
      • a) Reconnaître un programme récursif584
      • b) Concevoir un programme récursif584
      • 3) Applications584
      • a) Calcul de la factorielle d'un nombre584
      • b) Suite numérique587
      • c) Nombres pairs et impairs588
      • 4) Utilisation de la mémoire lors d'un appel récursif591
      • a) Les appels successifs591
      • b) Gestion de la mémoire d'exécution en Python592
      • c) Application à un programme récursif596
      • 5) Comparaison récursif-itératif601
      • 6) La récursivité terminale602
      • Pour aller plus loin604
      • TP 11 : la récursivité609
      • Correction du TP 11 : la récursivité613
      • Chapitre 14 : Les piles et les files623
      • 1) Introduction623
      • 2) Les piles625
      • a) Modélisation d'une pile non bornée626
      • b) Modélisation d'une pile bornée630
      • 3) Les files633
      • a) Modélisation d'une file non bornée634
      • b) Modélisation d'une file bornée634
      • Pour aller plus loin637
      • TP 12 : les piles et les files640
      • Correction TP 12 : les piles et les files648
      • Chapitre 15 : Les algorithmes de tri657
      • 1) Introduction657
      • 2) Exécution pas à pas d'un algorithme662
      • a) Exemple de proposition de tri662
      • b) Exécution de l'algorithme sur un exemple664
      • c) Analyse665
      • 3) Tri à bulles (bubble sort)666
      • a) Algorithme666
      • b) Complexité de l'algorithme du tri à bulles668
      • 4) Tri par insertion (insert sort)669
      • a) Algorithme669
      • b) Complexité de l'algorithme du tri par insertion672
      • 5) Tri rapide (quick sort)672
      • a) Algorithme672
      • b) Complexité de l'algorithme686
      • 6) Tri fusion (merge sort)688
      • a) Algorithme688
      • b) Complexité de l'algorithme du tri fusion693
      • Pour aller plus loin694
      • TP 13 : les algorithmes de tri697
      • Correction TP 13 : les algorithmes de tri702
      • Chapitre 16 : Thème 1-Introduction à la cryptographie711
      • Cours/TP711
      • Correction TP cryptographie729
      • Chapitre 17 : Thème 2-Le traitement des images751
      • Cours/TP751
      • Correction TP cryptographie762
      • Chapitre final : Devoirs d'entrainement en temps limité787
      • Evaluation 1 (chapitres 1 et 2)788
      • Correction de l'évaluation 1792
      • Evaluation 2 (chapitres 3 et 4)795
      • Correction de l'évaluation 2800
      • Evaluation 3 (chapitres 3 à 5)804
      • Correction de l'évaluation 3807
      • Evaluation 4 (chapitres 2 à 7)809
      • Correction de l'évaluation 4812
      • Evaluation 5 (chapitres 2 à 10)813
      • Correction de l'évaluation 5817
      • Evaluation 6 (chapitres 2 à 11)821
      • Correction de l'évaluation 6829
      • Evaluation 7 (chapitres 2 à 11 et révisions concours)833
      • Correction de l'évaluation 7839
      • Evaluation 8 (chapitres 2 à 13 et révisions concours)849
      • Correction de l'évaluation 8852
      • Evaluation 9 (révisions concours)856
      • Correction de l'évaluation 9861
      • Evaluation 10 (révisions concours)866
      • Correction de l'évaluation 10869
      • Evaluation 11 (révisions concours)880
      • Correction de l'évaluation 11888
      • Evaluation 12 (révisions concours)900
      • Correction de l'évaluation 12906
      • Evaluation 13 (révisions concours)908
      • Correction de l'évaluation 13918
      • Index933

  • Consultable à la Bpi