Vous êtes sur la page 1sur 2

ECT1 2015-2016 Lycee errazi el jadida TP Scilab no 1

TP Scilab no 1
I. Une introduction à la programmation
1) Exemple d’algorithme

programme de calcul :
(1) Choisir un nombre a.
(2) Le multiplier par 5.
(3) Soustraire 7.
(4) Si le résultat précédent est strictement positif, le diviser par 2.
Sinon ajouter 4.
(5) Qu’obtenez-vous ?
Qu’obtient-on si a = 6 ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Et si a = 1 ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Choisir un autre nombre a et exécuter l’algorithme : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

.
Programmer consiste `a traduire un algorithme en un langage compréhensible par l’ordinateur. Le langage
que nous utiliserons cette année sera celui du logiciel Scilab.
On pourra ainsi faire faire à l’ordinateur des calculs qui peuvent être fastidieux, répétitifs, longs . . .
Attention, contrairement à l’être humain, l’ordinateur n’est pas capable d’interpréter et d’analyser ce qu’on
lui demande, le message doit donc être clair, et sans aucune ambiguı̈té.

2) Premiers programmes Scilab


Ci-dessous, la traduction en langage Scilab du programme de calcul présenté plus haut.
langage Scilab en français

a=input(’choisir un nombre’); ...


b=a*5; ...
c=b-7; ...
if c>0 then d=c/2; ...
else d=c+4; end; ...
disp(d); ...

Concrètement.
Ouvrir le logiciel Scilab.
Cliquer sur l’icône afin d’ouvrir SciNotes, l’éditeur de texte de Scilab. Taper alors les 5 lignes du
programme ci-dessus, attention, bien respecter tous les caractères !
Pour exécuter ce programme de calcul, enregistrer d’abord ce fichier (vous pouvez créer un répertoire TP1
dans vos documents, et dans ce répertoire, enregistrer ce fichier sous le nom programme.sce).
Ensuite, cliquer sur l’icône , pour lancer le programme, et aller voir dans la console (il faudra donner la
valeur de a et valider par Entrée avant de voir le résultat).
Tester ce programme plusieurs fois, avec différentes valeurs de a.
Si tout marche bien, félicitations, vous venez d’écrire votre premier programme Scilab !
Lecture de programme.
Voici un autre exemple de programme :
m=input("Donner le coefficient directeur : ");
p=input("Donner l ordonnee a l origine : ");
r=-p/m;
disp(r,"la droite croise l’axe des abscisses en x= ");
Que fait ce programme ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Le taper dans un nouveau fichier (droites.sce) et le tester.
1/2
ECT 1 2015-2016 Lycee errazi el jadida TP Scilab no 1

II. Découverte de Scilab


Deux fenêtres nous seront utiles :
la console c’est la fenêtre de base, qui s’ouvre en premier, et
contient -->
On peut taper des instructions directement après -->, des
calculs . . . ou y faire exécuter un programme.

l’éditeur appelé SciNotes que l’on ouvre en cliquant sur .


C’est là que l’on écrira les programmes (plusieurs instruc-
tions à la suite).

1) Premiers calculs
Commençons par utiliser Scilab comme une simple calculatrice. C’est l’occasion de réviser les règles de
calcul de base : vérifiez à chaque fois que le résultat correspond à vos attentes !
Taper les instructions suivantes dans la console, à la suite des -->, en validant avec Entrée à la fin de
chacune :
2+2 3*4.1-7 floor(3.14159)
-2^3 3*(4.1-7) floor(16/3)
-5^2 -5+1/10 sqrt(25)
(-5)^2 -(5+1)/10 sqrt(12.5)
-(-5)^2 floor(12.7) ans^2
Que signifie ans ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Que semble faire l’instruction floor ? en anglais ≪ floor ≫ signifie ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..
Que signifie sqrt ? (abréviation de ≪ square root ≫) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Exercice.
1 1
√ 5544 6 + 3
Effectuer les calculs suivants avec Scilab : 32 − 7,63 + 5 ; 132 + 192 ; ; 1 .
11 × 12 − 660 2
Vous devez obtenir les résultats : −424, 976 puis 19 et −10, 5 et enfin 1 (si vous n’obtenez pas ces résultats, il s’agit sans doute
d’erreurs de parenthèses).
2) Les variables
Entrer les instructions suivantes et observer les résultats :
a=21/3 a<3
a b<=12
b=7*11; a>=6
b a+b>77
x=a+b; a==-12
x a==7
x^2 a<>11
Quel semble être le rôle du ; ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comment interpréter les réponses aux instructions de la colonne de droite ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

En fait, lorsque l’on rencontre une instruction du type a=7, il faut l’interpréter comme ≪ donnons la valeur
7 à la variable a ≫. C’est une affectation : on affecte la valeur 7 à la variable a.
En revanche a==7 est l’affirmation ≪ a est égal à 7 ≫ qui peut être vraie ou fausse (en anglais Vrai se dit
. . . . . . . . et Faux . . . . . . . . ), c’est un test ou comparaison.
De même, a<3 teste si a est strictement inférieur à 3, et a<>11 teste si a est différent de 11.
Remarque : comme fait dans les premiers programmes, on peut aussi demander avec une phrase, la valeur
à attribuer à une variable avec input.
x=input("choisir un nombre") a pour effet d’afficher la phrase ≪ choisir un nombre ≫ et d’affecter à x le
nombre qui sera tapé à la suite de la phrase. Essayer.

2/2

Vous aimerez peut-être aussi