Licence Sciences 1ère Année | |||
Filière -- Mathématiques, Informatique et Applications aux Sciences | 2004 - 2005 | ||
Programmation | |||
2ème semestre | 2005 | ||
TD 1 -- Variables et instructions conditionnelles | |||
11 Février 2005 | |||
Variables et instructions conditionnelles Cette séance de TD sera une première introduction au langage C, à sa syntaxe et à la structure des programmes. Une description exhaustive d'un programme exemple sera ainsi faite en exercice introductif. Par la suite, nous verrons l'utilisation des fonctions printf et scanf permettant l'affichage et la saisie de données formatées. Nous verrons dans un second temps les structures conditionnelles (if, else if et else) ainsi que l'échange simple de deux variables (par l'utilisation d'une variable temporaire). Enfin, nous verrons un programme un peu plus complet permettant la résolution d'une équation du second degré. | |||
énoncé correction | |||
TD 2 -- Itérations | |||
17 Février 2005 et 24 Février 2005 | |||
Itérations Durant cette séance de TD, nous allons aborder les différentes boucles en langage C. Nous verrons ainsi la structure de la boucle for(initialisation; condition de continuation; incrementation), la boucle while(condition de continuation) et enfin la boucle do ... while(condition de continuation). Pour bien appréhender leur utilisation et les différences de ces trois types d'itérations, nous réaliserons des programmes permettant de faire la somme de n entiers, le calcul de la factorielle d'un nombre, l'affichage d'un triangle isocèle, la détermination du minimum et du maximum d'une suite d'entiers et enfin la saisie d'une suite croissante. | |||
énoncé correction | |||
TD 3 -- Fonctions et transmission des paramètres | |||
24 Février 2005 et 03 Mars 2005 | |||
Fonctions et transmission des paramètres Cette séance de TD abordera la notion de fonction et son utilisation. Ainsi, nous allons voir comment un problème peut être résolu en le décomposant en plusieurs sous-problèmes plus simples, principe du diviser pour régner. Une grande partie des exercices proposés dans cette feuille concerne les nombres premiers. | |||
énoncé correction | |||
Examen surprise 1 | |||
Auteur G. Loyauté | 24 Février 2005 | ||
Ce petit examen surprise porte sur la compréhension des boucles (while, for et do while) ainsi que des structures de contrôle vues durant les trois premiers TDs. | |||
énoncé correction | |||
TD 4 -- Fonctions, transmission des paramètres | |||
10 Mars 2005 et 17 Mars 2005 | |||
Fonctions, transmission des paramètres Dans cette séance de TD, nous approfondissons l'utilisation des fonctions vues dans le TD précédent. Nous verrons ainsi le principe du passage par adresse qui permet à une fonction de changer la valeur d'un paramètre. De fait, il est nécessaire de faire précéder cette variable par l'opérateur & (qui correspond à l'opération de prise d'adresse) au moment de l'appel et de faire précéder le nom du paramètre par l'opérateur * (indiquant que la variable est un pointeur) dans le prototype de la fonction. | |||
énoncé correction | |||
Examen surprise 2 | |||
Auteur G. Loyauté | 17 Mars 2005 | ||
Ce petit examen surprise porte sur la compréhension des fonctions ainsi que les deux modes de passage des arguments, par valeur ou par adresse. Nous verrons ainsi l'une des utilisation possible du passage par adresse en calculant le n-ième nombre Harmonique. | |||
énoncé correction | |||
TD 5 -- Tableaux | |||
24 Mars 2005 et 07 Avril 2005 | |||
Tableaux Cette séance de TD sera consacrée à l'introduction de la structure de données « tableau ». Les tableaux manipulés sont statiques c'est-à-dire que la taille du tableau est connue à la compilation et ne dépend pas du nombre de données entré par l'utilisateur. Pour se faire nous allons définir dans le programme une constante symbolique N indiquant la taille du tableau. Après avoir défini un tableau en C, nous verrons des fonctions (accès aux cases, lecture affichage, ...) permettant de les manipuler. Nous verrons aussi comment passer un tableau à une fonction. Enfin, nous verrons les tableaux à deux dimensions et quelques utilisations (le triangle de Pascal) de cette représentation. | |||
énoncé correction | |||
TD 6 -- Chaînes de caractères | |||
07 Avril 2005 | |||
Chaînes de caractères Cette séance de TD est consacrée à la manipulation de chaînes de caractères. Dans le langage C, les chaînes de caractères sont représentées sous forme d'un tableau de caractères finissant par un caractère particulier, un marqueur de fin de mot. Il s'agit du caractère \0. Nous verrons des fonctions permettant de saisir et d'afficher une chaîne de caractère passée en argument, de déterminer la longueur d'une chaîne, de déterminer le nombre de chiffres qu'elles exhibent, de faire la mise en majuscule de la chaîne, .... Enfin, nous verrons deux techniques permettant de tester si un mot est un palindrome (un mot pouvant être lu indifféremment de droite à gauche ou de gauche à droite, par exemple été), la première utilisant une fonction inversant la chaîne tandis que la seconde procède directement sur la chaîne à tester. | |||
énoncé correction | |||
Examen surprise 3 -- Tableaux | |||
Auteurs C. Rispal et G. Loyauté | 19 Mai 2005 | ||
Tableaux Ce petit contrôle porte sur la bonne compréhension des tableaux (unidimensionnel et bidimensionnel) au travers des fonctions de détermination du minimum et du maximum dans un tableau d'entiers, de réaliser le décalage à gauche dans un tableau de caractères et enfin de déterminer si un tableau bidimensionnel d'entiers est un carré magique. | |||
énoncé correction | |||
TD 7 -- Structure | |||
12 Mai 2005 | |||
Structure Ce TD va se consacrer à l'utilisation de la notion de structure, définie à l'aide du mot clé struct, qui permet de regrouper dans une même variable plusieurs informations de types différents. Nous définirons ainsi une structure regroupant toutes les informations nécessaires à l'élaboration d'une fiche d'un étudiant, une autre définissant des polynômes et enfin une dernière pour les nombres rationnelles. Nous utiliserons ces structures à l'aide des fonctions permettant de les lire et les écrire sur l'entrée et la sortie standard. | |||
énoncé correction | |||
TD 8 -- Tableau de structures | |||
19 Mai 2005 | |||
Tableau de structures
Cette séance de TD s'intéresse à l'utilisation d'un tableau de structure et plus exactement un tableau de fiches d'information
sur des étudiants. Nous définirons ainsi une nouvelle structure représentant un TD d'étudiants ainsi que des fonctions
permettant de la manipuler. Ces fonctions permettront de faire la saisie ou l'affichage d'un TD complet,
une fonction permettant de faire la moyenne d'un étudiant donné ainsi qu'une autre permettant de déterminer quel étudiant à la
meilleur moyenne. Enfin, nous réaliserons une fonction permettant de faire la saisie ordonnée alphabétiquement des étudiants d'un
TD, ce qui permettra d'introduire l'algorithme du tri par insertion. | |||
énoncé correction | |||
Examen surprise 4 -- Structure de données et chaînes de caractères | |||
Auteurs C. Rispal et G. Loyauté | 19 Mai 2005 | ||
Structure de données et chaînes de caractères Ce petit contrôle porte sur la bonne compréhension des chaînes de caractères (tableaux de caractères se terminant par '\0') au travers une fonction de détermination du nombre d'occurence d'un caractère spécifié en argument. Ainsi que des structures de données par l'implantation de fonction de lecture et d'affichage de deux structures, la première représentant un Conducteur, la seconde un Véhicule. Enfin, une fonction permettant de calculer le pgcd et le ppcm de deux nombres devra être implantée (retour sur le passage par adresse). | |||
énoncé correction |
Copyright © 2003 - 2004 Gautier Loyauté, Last modified: Sat Aug 28 18:20:35 CEST 2004 |