TD-03, reculer pour mieux sauter

Ce document est disponible à l'URL http://www.enseignement.polytechnique.fr/profs/informatique/Luc.Maranget/TC/X.97/TD-03/enonce.html

1  Sauter où ?

Ce TD est le dernier de la série des TD d'initiation. Le but de cette série de TD est d'acquérir deux savoir-faire (techniques) de base, à savoir : compiler et exécuter un programme C en utilisant Borland C++ ; et nous communiquer les résultats de vos TD.

2  La dernière séance, sauter dans Windows

Si vous ne vous sentez pas à l'aise avec votre PC, cette dernière séance d'initiation est l'occasion rêvée pour nous poser des questions. En particulier, sur le système de fichier de Windows.

Dans ce système (comme dans tous les autres) les fichiers sont organisés en arbres. Un fichier texte ou exécutable repose dans un répertoire (ou un dossier ou un directory). La ruse est que les répertoires sont aussi des fichiers, qui reposent dans des répertoires et ainsi de suite jusqu'à la racine.

L'explorer donne un dessin de l'arbre des fichiers (avec la racine à gauche), les fenêtres de répertoires donnent une vision plus locale, où les fichier contenus dans le répertoire sont représentés par des icônes.... Les fenêtres de dialogue et en particulier de recherche de fichiers des différents programmes proposent une vision similaire de la hiérarchie des fichiers, par exemple les icônes peuvent être plus ou moins variées, mais on arrive généralement à identifier les sous-dossiers.

Enfin, on doit parfois référencer un fichier par son chemin d'accès. La racine est le disque C:\. Un répertoire rep1 à la racine aura donc pour chemin d'accès C:\rep1\. Un fichier fich situé dans rep1 aura donc pour chemin d'accès C:\rep1\fich. Un dossier étant aussi un fichier, un fichier fich situé dans le répertoire repn, situé dans le répertoire repn-1, situé etc., situé en rep1 à la racine, aura pour chemin d'accès
C:\rep1\...\repn-1\repn\fich
Note : En Windows, les majuscules ne sont pas significatives dans les noms de fichier. Ce n'est pas le cas dans d'autres systèmes. Prenez donc l'habitude de les respecter dès aujourd'hui. Pour des raisons du même ordre, on évite d'utiliser des caractères accentués ou des espaces dans les noms de fichier, même quand c'est possible.

Pour faire un petit bilan de vos acquis, vous pouvez : créer un fichier de texte (à l'aide de l'éditeur Bloc Notes. Déplacer, renommer, copier le fichier en utilisant le menu Édition des fenêtres de répertoire, sous Windows. Créer un répertoire, lister son contenu, sous Windows. Portez votre attention sur quelques fonctionnalités dites avancées, comme le menu Affichage des fenêtres de répertoire.

3  Utiliser Borland C++

Ce point, le plus important de la séance, a déjà été vu lors du TD précédent. C'est le moment de parfaire vos connaissances à l'aide d'un nouveau document, plus complet, la trousse de survie. Jetez-y de toutes façon un coup d'oeil et n'hésitez pas à créer vous même un projet et à refaire une compilation. Vous pouvez par exemple compiler le programme donné en exemple dans la trousse de survie, ou, plus formateur, le programme correct de calcul de la médiane.

Ensuite, installez la MacLib dans les répertoires de Borland C++ (voir la trousse de survie de la MacLib) et compilez l'exemple de la trousse de survie ou une des solutions des exercices graphiques du dernier TD (dessine moi un carré ou un cercle).

4  Nous communiquer les résultats (à regarder une demi-heure avant la fin)

À la fin des séances de TD, au plus tard avant le TD suivant, nous apprécierions de disposer du résultat de vos efforts. Non pas pour vous juger individuellement (d'autres s'en chargent), mais pour ajuster notre enseignement. Nous vous demandons donc de déposer vos fichier source à l'aide de ftp. En échange, nous nous engageons à regarder vos oeuvres et à les commenter.

Nous vous demandons de commencer dès aujourd'hui en rédigeant un petit compte-rendu succinct de vos réussites compilatoires. Vous pouvez écrire ce compte-rendu avec l'éditeur Bloc Notes.

Voici par exemple le compte-rendu d'un élève.
Chers chargés de TP.

J'ai la joie de vous annoncer la compilation réussie de l'exemple de
la médiane. Toutefois j'ai le regret de vous faire part de l'insuccès
de mes efforts, pourtant acharnés, dans la compilation de l'exemple «
dessine moi un cercle ».

Enfin, ce message est la preuve, si j'ose dire vivante, de mon succès
à vous communiquer mes résultats.

Travaux-pratiquement vôtre,

Tarte Empion, Tarte.Empion@polytechnique.fr
Sauvez le compte rendu dans un fichier de nom Prenon.Nom, par exemple Tarte.Empion.

Une fois votre compte rendu écrit, déposez le sur poly dans un sous-répertoire de mon répertoire : /users/profs/maranget/TD-03/. Voici comment procéder.
  1. Lancer cuteftp.
  2. Si une fenêtre FTP Site Manger s'ouvre, fermez la.
  3. Dans le menu FTP, sélectionnez Quick Connect. Une fenêtre apparaît. Il faut la remplir :
    1. Pour Host Address, mettre poly.
    2. Pour Initial Remote Directory, mettre /users/profs/maranget/TD-03/.
    3. Renseigner les rubriques, USER ID et Password, avec votre nom de login et votre mot de passe.
    4. Dans Login type, cochez normal.
    5. Cliquez sur OK.
  4. Si tout se passe bien une fenêtre de broutage (browser window) double apparaît. À gauche votre machine, à droite, le répertoire de dépôt sur poly. Notez qu'il s'agit là d'une vue des la hiérarchie de fichiers de deux machines.
  5. Brouter à gauche pour retrouver le fichier Tarte.Empion et le faire glisser dans la fenêtre de droite. Pour remonter d'un niveau dans la hierarchier de fichier du PC, cliquer sur la première icône dossier .. ; pour redescendre, cliquer dans le dossier approprié.
  6. Vous pouvez renommer le compte rendu au dernier moment (avant de le transférer), en le sélectionnant, puis en choisissant Rename dans le menu Commands.
En désespoir de cause, si vous ne parvenez pas à utiliser cuteftp, envoyez nous le compte-rendu par courrier électronique à l'adresse Luc.Maranget@inria.fr. Utilisez Eudora, que vous aurez au préalable configuré (cf http://www.polytechnique.fr/poly/guide/pc), ou votre brouteur.

5  S'il vous reste du temps

Écrire, compiler et exécuter in programme qui affiche les 10 premiers entiers et leurs carrés. Procédez à partir des briques de base suivantes.

Une boucle C simple s'écrit comme suit :
#include<stdio.h> /* en têtes standards */

void main(void) /* fonction principale, avec son type */
{
  int i;  /* déclaration de variable entière */

  for (i=1 ; i <= 10 ; i++) { /* boucle for */
    ... /* corps de boucle */
  }
  getchar(); /* attendre enter */
} /* fin de la fonction main */
(Les /* ... */ sont des commentaires, inutile de les recopier).

On affiche un entier par la fonction printf. Par exemple, si i est une variable de type int.
  printf("%d",i+1); /* affiche i+1 */
On affiche une chaîne aussi par la fonction printf. Par exemple :
  printf("coucou\n"); /* \n est le saut à la ligne */

Ce document a été traduit de LATEX par HEVEA.