Vous êtes sur la page 1sur 2

Suis-je prêt(e) pour le Contrôle Continu N°1 ?

1 Savoir

À quoi sert la commande clear


Ce qu’est une variable Une variable possède :
– Un nom (un identifiant) ;
– Une valeur.

Ce qu’est, pour Scilab,


Une matrice (n lignes, m colonnes) matrice (n × m)
Un scalaire matrice (1 × 1)
Un vecteur ligne (n éléments) matrice (1 × n)
Un vecteur colonne (n éléments) matrice (n × 1)

Quelques fonctions mathématiques courantes – cos, sin, exp, log, sqrt


– norm, abs, inv
– imag, real, conj
Quelques commandes de définition de matrices/vecteurs eye(n,n), zeros(n,m), ones(n,m)
Quelques constantes %i et %pi
Les opérateurs courants :
Classiques (sur des scalaires) ou matriciels (sur des vecteurs et/ou des ma- +, -, *, ^, /, ’ (transposition)
trices)
Élément par élément (sur des vecteurs et/ou des matrices) .*, .^, ./
Les règles d’opérations matricielles/vectorielles Dimensions :
Produit matriciel * (n × m) * (m × p) donne (n × p)
Autrement dit, le nombre de colonnes de la
première matrice (ou vecteur) doit être égal
au nombre de lignes de la deuxième matrice
(ou vecteur)
Addition +, soustraction - et toutes les opérations élément par élément .*, (n × m) .* (n × m) donne (n × m)
.^, ./
Autrement dit, les dimensions doivent être
exactement les mêmes (les deux opérandes
ont le même nombre de lignes et le même
nombre de colonnes)
Distinguer la définition d’une fonction de l’appel d’une fonction La définition sert à définir ce que la fonc-
tion va faire, en fonction des arguments
d’entrée. L’appel sert à utiliser la fonc-
tion préalablement définie, avec des ar-
guments d’entrée fixés.

2 Savoir-faire

Réaliser une affectation a=5 (le nom de la variable est a et on lui affecte,
c’est-à-dire on lui donne, la valeur 5.)
NB : On peut affecter à une variable le résultat d’une opération a=sin(2*%pi) (la variable a prend la valeur 0.)
Discrétiser l’espace
On connaît : u=[min:pas:borne_sup]
– La valeur du premier élément : min
Si le pas est égal à 1, on peut l’omettre :
– Le pas (l’incrément) entre deux éléments successifs : pas
u=[min:borne_sup] ⇔ u=[min:1:borne_sup]
– La borne supérieure (attention : ce n’est pas nécessairement la
valeur du dernier élément) : borne_sup
On connaît :
u=linspace(min,max,nb_elements)
– La valeur du premier élément : min
– La valeur du dernier élément : max
– Le nombre d’éléments souhaité : nb_elements

1
Passer de l’un à l’autre
Si l’on connaît min, pas et borne_sup nb_elements=int((borne_sup - min)/pas)+1
Si l’on connaît min, max et nb_elements pas=(max - min)/(nb_elements - 1)
Accéder aux éléments d’un vecteur ou d’une matrice :
Accéder à un élément u(5) (5è élément)
A(2,4) (élément ligne 2 colonne 4)
Accéder à un ensemble d’éléments (sous-vecteur ou sous-matrice) u(1:5) (éléments 1 à 5)
A(:,2:6) (toutes les lignes, colonnes 2 à 6)
Un script est simplement une suite d’instruction
Écrire un script (de commandes) séparées par un retour à la ligne.
Écrire (définir ) une fonction, c’est-à-dire définir ce que la fonction Exemple générique (3 arguments d’entrée, 2 argu-
fera quand elle sera appelée. Les arguments d’entrée de la fonction ments de sortie) :
sont des variables locales (qui n’existent pas en dehors de la définition
function [r1 r2] = nom_fonction(arg1,arg2,arg3)
de la fonction), dont les valeurs seront déterminées à l’appel de // Corps de la fonction
la fonction. De même, les arguments de sortie sont également des endfunction
variables locales dont les valeurs sont déterminées dans le corps de
la fonction et qui sont retournées au programme à la fin de l’appel. Autre exemple :
La définition d’une fonction est composée de trois parties :
function [r theta] = polaire(x,y)
– L’en-tête (ou signature, ou encore stéréotype) de la fonction qui r=sqrt(x.^2+y.^2)
fait apparaître : theta=atan(y./x)
• Le mot-clé function endfunction
• Les variables de sortie (ou de retour), définies sous forme de
vecteur Ici, les variables d’entrée, x et y sont utilisées
• Le nom (l’identifiant) de la fonction dans le corps de la fonction pour calculer les co-
• La liste des arguments d’entrée (variables d’entrée, séparées par ordonnées polaires r et theta qui constituent les
des virgules) variables de sortie et qui sont retournées au pro-
– Le corps de la fonction, qui définit les instructions à effectuer. On gramme appelant à la fin de l’exécution de la fonc-
utilise les variables d’entrée pour calculer la valeur des variables tion.
de sortie, qui seront retournées à la fin de la fonction.
– La fin de la fonction, qui est composée uniquement du mot-clé
endfunction

Charger un script, charger une fonction (contenu(e) dans un fichier Utiliser le menu (Fichier > Ouvrir un fichier...),
.sce) ou bien : exec("nom_du_fichier.sce")

Faire appel à (appeler ) une fonction, c’est-à-dire l’utiliser dans un


programme (le programme appelant). Il faut au préalable avoir chargé [r t] = polaire(2,3);
le fichier contenant la définition de la fonction dans l’environnement x1=5;
y1=2.5;
de travail de Scilab. Les variables d’entrée sont soit des constantes,
[r1 t1] = polaire(x1,y1);
soit des variables précédemment initialisées dans le programme ap- x2=7.2;
pelant (une valeur leur a été affectée). Les valeurs prises par les vari- y2=-4.9;
ables de retour sont récupérées par le biais d’une affectation dans un [r2 t2] = polaire(x2,y2);
vecteur.

Utiliser une boucle for ("pour") for i=1:10


x(i)=2*i;
end

Utiliser une boucle while ("tant que") i=1;


while(i <= 10)
x(i)=2*i;
i=i+1;
end
if(x>0)
if(x==0) y=1/x;
y=0; elseif(x<0)
else ou bien y=-1/x;
Utiliser une structure conditionnelle ("si... alors... sinon") y=1/x; else
end y=0;
end

Savoir dérouler un programme et visualiser l’« état de la mémoire » Voir ce qui a été fait en TD.
au fur et à mesure de l’exécution.