Extrait du TP1 d'algo des premières années de DUT Info de Yann Secq.
Au
commencement était le terminal ! Le terminal est le suppôt
du système d'exploitation : par son intermédiaire, il
vous est possible de le questionner et de lui soumettre des requêtes
(auquel il répondra prestement). Votre première mission
consiste donc à trouver ce terminal en farfouillant dans les
antres des menus de votre gestionnaire de fenêtres (ou window
manager, qui doit être Gnome normalement). Baladez-vous dans
les menus, jusqu'à trouver un item terminal.
Une fois
identifié, sélectionnez cet item et le suppôt
apparaîtra sous la forme d'une fenêtre supplémentaire,
tout de noir excepté une étrange phrase en haut à
gauche. Cette phrase est l'invite du terminal: il vous identifie et
attend vos requêtes. Malheureusement, le suppôt de l'OS
parle un anglais médiocre. Il vous faudra donc faire preuve de
qualité linguistique lorsque vous vous adresserez à
lui. Nous allons voir les rudiments de sa langue, ce qu'il vous sera
nécessaire de maîtriser pour pouvoir ensuite créer
vos premiers algorithmes.
Lorsque vous ouvrez un terminal, il vous accueille généralement chez vous, c'est-à-dire à la racine de votre compte (ie. votre petit espace personnel qui contiendra bientôt tous les parchemins et grimoirs nécessaires à votre progression dans l'art de l'informatique ;). Commencez donc par taper la commande ls dans le terminal (en minuscule et en validant avec un retour à la ligne). Une liste de mots devrait s'afficher, vous présentant ce que contient votre répertoire (normalement, les répertoires que vous avez créé lors du TP0).
Pour ne pas mélanger toutes vos recettes et vos
expérimentations, vous allez demander au terminal de vous
emmener dans votre répertoire dédié à
l'algorithmique (ap ou ap1 ou ap12, peu importe). Pour ce faire,
utiliser la commande cd à laquelle vous devez indiquer le
répertoire dans lequel vous désirez vous rendre: cd
ap12 (en supposant que ap12
soit le répertoire que vous avez créé lors du
TP0). Vous devriez constater suite à l'exécution de
cette commande que la phrase d'accueil du terminal (ou prompt) s'est
légèrement modifiée pour faire apparaître
le répertoire dans lequel vous vous trouvez.
Vous
pouvez maintenant LiSter le contenu de ce répertoire pour voir
ce qu'il contient ... et pour l'instant, il n'y a pas grand chose.
Dernière petite chose, même si il est intéressant de pouvoir "s'enfoncer" dans une arborescence, encore faut-il en "remonter" parfois. Si vous désirez revenir dans le répertoire précédent (c'est-à-dire dans ap12 lorsque vous êtes dans tp1, il vous suffit d'utiliser la commande: cd .. (le ".." veut dire répertoire précédent !).
Toujours dans la soucis de maintenir votre intérieur
rangé et ordonné, vous devrez lors de chaque séance
créer un nouveau répertoire. Ainsi, pour ce premier
Travail Pratique, vous allez créer le répertoire tp1
(en minuscules) en implorant gentiment le terminal avec la commande:
mkdir tp1
(qui se traduitl littéralement par make directory
tp0, que je ne vous ferez pas la honte de traduire :).
Un
petit coup de ls pour vérifier
que le suppôt de l'OS ne nous ait pas joué de vilain
tour ... et vous devriez voir apparaître le nouveau répertoire.
Placez-vous dans ce dernier pour que nous puissions passer au
deuxième guide fondamental : celui vous permettant de créer
des textes.
Avant cela cependant, il faudrait faire un peu de
ménage et déplacer les fichiers que vous avez créé
lors du TP0. Pour cela, commencez par créer un répertoire
tp0 (mkdir
tp0 après avoir fait un cd
.. pour que le répertoire tp0
soit créé dans le répertoire ap12)
et utilisez ensuite la commande MoVe pour déplacer tous les
fichiers commençant par "h" dans le répertoire
tp0 : mv h* tp0.
Avant de pouvoir écrire vos programmes, encore faut-il disposer d'un papier et d'un crayon ! Traduit dans le contexte informatique, il vous faut un outil que l'on nomme avec raison un éditeur de texte et qui comme son nom l'indique permet ... (je vous laisse compléter cette phrase :). Il existe de nombreux éditeurs de texte, mais deux d'entre eux sont des stars de la galaxie UNIX (ie. le bon côté de la Force) : vi et emacs. Le premier est un frêle chevalier juste vétu d'un pagne et ne payant pas de mine (un lointain frère de Yoda paraît-il). Le second est plus proche d'un transformer: en fonction de son interlocuteur, il peut ressembler à un vélo ou au Faucon Millenium !
Nous allons donc passer directement à une
étude (très) sommaire de ce couteau suisse de l'édition
qu'est emacs. Un peu de généalogie: emacs
est un gros bébé né de l'imagination de Richard
Stallman (si vous ne le connaissez pas, demandez à votre ami
google ce qu'il en pense) initialement conçu pour participer à
la création du projet GNU (pareil). L'intérêt de
cet outil (tout comme vi) est que vous le trouverez sur tous les UNIX
existants et qu'il vous permettra de créer de multiples textes
quelques soit les langages que vous utilisez.
Emacs, c'est un
peu le saxophone de l'édition de texte: il suffit de savoir
souffler pour faire un son ... par contre, il faut des années
de pratique pour participer à "A Kinf of Blue" !
Vous allez donc commencer vos premiers pas d'emacsien en apprenant à
le lancer et à éditer un petit texte.
Tout est dans le titre: placez-vous dans le terminal et
demandez gentiment à ce dernier de lancer emacs en
tapant la commande suivante emacs &.
N'oubliez pas le & ! Vous
verrez plus tard lors de vos explorations système la
signification de ce petit canard. Une fois la commande validée,
vous devriez voir apparaître la fenêtre de l'éditeur
(pas très sexy, il faut le reconnaître, mais n'oubliez
pas que l'habit de ne fait pas le moine).
La fenêtre
d'emacs se décompose en trois importantes parties: la
barre de menu, la fenêtre d'édition et le mini-buffer.
La barre de menu permet d'accéder aux fonctionnalités
les plus courantes de l'éditeur, n'hésitez pas à
sélectionner chacun des items pour voir ce qu'il y a au menu.
La fenêtre d'édition arbore un magnifique gnu stylisé
(quel joli animal) et quelques messages abscons de bienvenue. Le
mini-buffer est un élément très important de
l'éditeur: généralement, lorsqu'emacs
cherche à communiquer avec vous, il le fait par
l'intermédiaire de cette ligne, ne le perdez donc jamais de
vue !
Dernière petite chose, Stallman a les doigts
crochus et aime apparemment les solos de Satriani ! Dit autrement,
vous allez devoir maîtriser des enchaînements de touche
digne des meilleurs solos d'Hendrix ... Vos meilleurs amies
deviendront les touches CONTROL (CTRL)
et ESCAPE (ESC), auxquelles vous
adjoindrez d'autres lettres pour lancer diverses commandes et entrer
en symbiose avec emacs.
Pour débuter vous allez créer l'inévitable HelloWorld qui constitue le arreuh de l'informaticien :) Pour cela, enfoncez la touche CTRL (et maintenez là enfoncée), puis enfoncez la touche (vous pouvez la relâcher) et finalement la touche XF et relâchez tout ! Et là ? Rien ne se passe ?!?!! Et pourtant, si vous avez retenu l'important message du paragraphe précédent et en portant votre regard sur le mini-buffer vous constaterez qu'emacs a réagi à votre appel et vous indique le répertoire courant. Placez-vous dans le répertoire tp1 (ci ce n'est pas déjà le cas) en appuyant deux fois sur la touche tabulation (la zone d'édition se retrouve scindée en deux et la partie basse vous indique la LiSte des fichiers et répertoires présents dans le répertoire courant. Vous pouvez ensuite taper t et tabulation et emacs devancera vos désirs en complétant promptement le fichier ou le répertoire indiqué. Une fois dans le répertoire tp1, écrivez (dans le mini-buffer) helloworld.py et validez.
Ca y est, vous êtes prêts à créer votre premier code source !
Pour
cela, recopiez (à la main, pas de copier/coller paresseux!) le
texte ci-contre (en respectant exactement ce qui est écrit).
|
# Mon premier programme
print ("Hello World")
|
Pour ne pas perdre votre précieux travail, utilisez la combinaison magique CTRL-X-S pour sauvegarder votre fichier (emacs vous indique qu'il a compris votre requête avec un message de confirmation dans le mini-buffer).
1- Mon premier programme
Pour exécuter un programme python, le fichier helloworld.py sauvegardé, retournez sur la fenêtre du terminal et tapez :
python helloworld.py
Ceci aura pour effet d'exécuter votre fichier helloworld.py à l'aide d'un interpréteur python.
Normalement, vous devriez voir s'afficher la phrase "Hello World" sur votre écran.
Bravo, vous venez de faire votre premier programme !
Maintenant essayons d'aller plus loin, modifiez votre fichier helloworld.py, pour qu'il affiche "Bonjour le monde".
Une fois le fichier modifié, enregistrez le et ré-exécutez le : python helloworld.py
2- Utiliser une variable
Maintenant
créez une autre fichier que vous nommerez exo2.py.
Dans
ce fichier copier/coller ce code.
|
# exo2.py hello = 'hello world' print (hello) |
Enregistrez le fichier et exécutez le : python exo2.py
A quoi sert hello = 'hello world' ?
Maintenant, modifiez le fichier exo2.py, pour qu'il affiche "Bonjour Monsieur Dujardin".
3- Entrées et Sorties
Créez les fichiers exo3.py et exo4.py et exécutez les.
|
# exo3.py var = input("Donnez la valeur de la variable hello ?") print (var)
|
|
# exo4.py personne = input ("A qui dire hello ?") print ("hello ", personne)
|
A quoi sert var et personne, quel est leur fonction ?
A quoi sert la fonction input ?
4- Les calculs
Créez le fichiers exo5.py et exécutez le.
|
# exo5.py addition = 1234 + 56 soustraction = 1234 - 56 multiplication = 1234 * 56 division = 1234 / 56 divisonEntiere = 1234 // 56 reste = 1234 % 56 print ("addition : ",addition) print ("soustraction : ",soustraction) print ("multiplication : ",multiplication) print ("division : ",division) print ("divison entiere : ",divisonEntiere) print ("reste : ",reste)
|
Modifiez le fichier afin de pouvoir demander lors de l'exécution de votre programme 2 opérandes (comme 1234 et 56) à saisir au clavier et d'effectuer les calculs avec ces 2 opérandes.
Une fois cela, termine, feuilletez votre guide pour python et jusqu'au 1.4.
5- Les types
Exécutez les commandes suivantes dans le shell et expliquez les résultats affichés par python :
|
# exo6.py r, pi = 5, 3.14 r = 2 * pi * r s = pi * r ** 2 print c, s print type(r), type(pi), type(c), type(s) |
6- Périmètres, Aires et Volumines
P
arallélépipède
rectangle (pavé droit)
Volume = abc
Aire = 2(ab+ac+bc)
P
arallélépipède
non-rectangle.
Volume = ach = abc sin
Aire = 2(ah + bc + ca) = 2(ab sin + bc + ac)
S
phère.
Volume
=
![]()
Aire
=
![]()
C
ylindre
droit.
Volume
=
![]()
Aire
=
![]()
C
ylindre
non-droit.
Volume
=
=
![]()
Aire
latérale =
=
![]()
T
ronc
de cylindre.
Volume
=
![]()
C
one
droit.
Volume
=
![]()
Aire
latérale =
=
![]()

Pyramide
A désigne l'aire de la base.
Volume
=
![]()
C
alotte
sphérique.
Volume
=
![]()
Aire
=
![]()
Z
one
sphérique.
Volume
=
![]()
Aire
latérale =
![]()
T
onneau.
Volume
=
![]()
T
ore.
Volume
=
![]()
Aire
=
![]()
Calculez les périmètres et les surfaces des figures suivantes : Triangle, rectangle, carré, losange, trapèze
|
|
Périmètre |
Surface |
|
Triangle |
a+b+c |
base * hauteur / 2 |
|
Rectangle |
2*Longueur + 2*largeur |
Longueur * largeur |
|
Carré |
4 * côté |
côté * côté |
|
Losange |
4 * côté |
Base * hauteur / 2 |
|
Trapèze |
Base + base + côté1 + côté2 |
Base * hauteur / 2 |
Calculez les volumes des figures suivantes : Cube, Sphère, Pyramide, Tonneau
|
|
Volume |
|
Cube |
arête 3 |
|
Sphère |
4Πr/3 |
|
Pyramide, cône : |
(aire de la base) * hauteur / 3 |
|
Tonneau : |
Πh(2D2 + d2)/12 |