• Aucun résultat trouvé

Informatique 1 (CPUGE, première année)

N/A
N/A
Protected

Academic year: 2022

Partager "Informatique 1 (CPUGE, première année)"

Copied!
6
0
0

Texte intégral

(1)

HAL Id: hal-02390438

https://hal.archives-ouvertes.fr/hal-02390438

Submitted on 3 Dec 2019

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Informatique 1 (cours pour CPUGE, première année)

Roberto M. Amadio

To cite this version:

Roberto M. Amadio. Informatique 1 (cours pour CPUGE, première année). DEUG. France. 2019.

฀hal-02390438฀

(2)

Roberto M. Amadio Universit´ e Paris-Diderot

3 d´ecembre 2019

(3)

2

(4)

pr´eparatoires aux ´ecoles d’ing´enieurs de l’Universit´e Paris Diderot est fortement inspir´e par le programme d’informatique (2013) destin´e aux ´el`eves de premi`ere ann´ee de toutes les voies scientifiques des CPGE [MES13]. Les diff´erences essentielles sont : (i) un moindre volume horaire (24 heures de cours et 24 heures de travaux pratiques), (ii) une concentration au premier semestre (ce qui impose une synchronisation avec le cours de math´ematiques) et (iii) le fait que l’initiation aux bases de donn´ees est remplac´ee par une (br`eve) initiation `a la manipulation de donn´ees organis´ees comme dans une feuille de calcul.1 Ainsi, les trois th´ematiques qui sont abord´ees sont :

— algorithmique et programmation (enpython),

— nombres flottants et calcul num´erique (avec utilisation des biblioth`equesnumpy,scipy et matplotlibde python) et

— manipulation de tables de donn´ees (avec utilisation de la biblioth`equepandas).

Chaque th`eme pourrait faire l’objet de un, voir plusieurs, cours ! Il s’agira donc essentiel- lement d’uneinitiation `a ces th`emes dans laquelle on cherche `a :

— fixer quelques notions fondamentales,

— sensibiliser `a des questions qu’on n’a pas le temps de traiter de fa¸con satisfaisante et

— pratiquer les notions introduites dans le cadre de l’environnement de programmation python.

La notion detype de donn´eesest le fil conducteur du cours. En g´en´eral, un type de donn´ees correspond `a un ensemble de donn´ees qui ont des propri´et´es communes et qui peuvent ˆetre manipul´ees `a l’aide de certains op´erateurs.2

On commence avec des types de donn´ees primitifs ou pr´ed´efinis tels que le type des entiers avec les op´erations arithm´etiques, le type des bool´eens avec les op´erations logiques de conjonction, disjonction et n´egation, le type desflottantsqui permet d’approcher avec un ordinateur le calcul sur les nombres r´eels, le type deschaˆınes de caract`eresavec des op´erations telles que la concat´enation. On continue avec des types de donn´ees qui sont obtenus par application d’un constructeur de type `a des types de donn´ees d´ej`a d´efinis. Dans le cadre de python, on consid`ere notamment la construction de vecteurs (type tuple) et de tableaux dynamiques (typelist). On ´evoque ensuite le typearrayqui est une sp´ecialisation des tableaux dynamiques (typelist) qui vise le calcul matriciel et on termine avec d’autres sp´ecialisations du type des tableaux dynamiques (typelist) connues comme Series et DataFrame qui visent le traitement de tables de donn´ees (un peu comme on le ferait dans une feuille de calcul).

1. Ce remplacement a une motivation ´eminemment pratique li´ee `a l’organisation de l’ann´ee acad´emique.

2. On peut dire que programmer consiste `a choisir un certain nombre de types de donn´ees propos´es par le langage et si n´ecessaire `a enrichir la palette des op´erations disponibles.

3

(5)

4 Pr´eface

Il est fortement recommand´e d’´etudier en parall`ele avec le cours au moins un des docu- ments suivants :

— le livre [Wac13][chapitres 1–9],

— les notes de cours [Sva19][parties I–II],

— les notes de cours [FP19][chapitres 1–12].

Et voici des r´ef´erences pour un approfondissement :

— le livre [CLRS09] est une r´ef´erence standard sur l’algorithmique,

— en d´epit de la prolif´eration de livres sur la programmation en python, l’introduction [vR19] r´edig´ee par le concepteur du langage est probablement la meilleure r´ef´erence (aussi pr´ecise et `a jour que possible),

— sur les nombres flottants et les erreurs d’arrondi, une lecture incontournable est [Gol91],

— parmi les bonnes introductions `a l’analyse num´erique (niveau licence et en fran¸cais), on peut citer [Dem06] et [Her19],

— le document [VGVdB19] est une description assez syst´ematique des biblioth`eques python pour le calcul scientifique dont celles utilis´ees dans le cours (numpy, scipy, matplotlibetpandas). La biblioth`equepandasest aussi d´ecrite en d´etail par son concep- teur dans [McK17].

Ce qui suit est une trace assez d´etaill´ee du cours.

(6)

Références

Documents relatifs

[r]

´ Ecrire une fonction qui teste si deux arbres sont ´ egaux ` a rotation pr` es (on pourra dans un premier temps le faire dans le cas o` u tout noeud interne a exactement 2

Syntaxe.- Pour multiplier deux octets, l’un des op´erandes doit ˆetre plac´e dans le registre AL et l’autre op´erande doit dans un un registre de un octet ou un emplacement

[r]

[r]

[r]

Notes de Alexandre Grothendieck d’un mini cours donn´ e ` a Mormoiron dans le Vaucluse (France) en mai 1983 donnant un formulaire des six op´ erations coho- mologiques et de

S’il est impossible d’obtenir la matrice identit´ e dans le bloc de droite cela signifie que A n’est pas inversible et on dira alors que la matrice A est singuli`