Académique Documents
Professionnel Documents
Culture Documents
Copyright © 2008/2009
Principe et structure des programmes.
Les Objets
Pour créer un gâteau, j'utilise un 'moule à gâteau', ce moule à les caractéristiques du gâteau
(forme, hauteur..), mais je ne peux pas manger le moule!! Le moule se nomme la Classe.
Avec le moule, je crée un ou plusieurs gâteaux.
Autre exemple:
Ma voiture est un objet, cet objet existe, on peut l'utiliser.
Ma voiture fait partie de "Les voitures", du type, du genre "Les voitures". "Les voitures"
c’est une classe (Class) qui a ses caractéristiques : "Les voitures" ont une couleur, un
moteur.., elles roulent en transportant des passagers…
mais je ne peux pas utiliser "Les voitures", la Classe; pour me déplacer, il faut avoir un
objet "voiture".
Avec la Classe je vais créer des Objet.
De manière générale, une classe est une représentation abstraite de quelque chose,
tandis qu'un objet est un exemple utilisable de ce que représente la classe.
Pour fabriquer ma voiture, je prends les caractéristiques de la class "Les voitures"
(c’est comme un moule) et je fabrique une voiture, je la nomme "MaVoiture".
Dim MaVoiture As New Lesvoitures
MaVoiture est maintenant un nouvel objet de type 'Les voitures'.
Méthodes :
MaVoiture fait des choses : elle roule par exemple.
Pour faire rouler la voiture j’appelle la méthode ‘Roule’
MaVoiture.Roule
Syntaxe : Objet.Méthode (Il y a un point entre les 2 mots)
Si c’est possible pour cette méthode je peux indiquer à quelle vitesse la voiture doit rouler :
MaVoiture.Roule(100) 'j’ai ajouté un paramètre.
Le paramètre est un renseignement envoyé avec la méthode.
Il est possible parfois d’indiquer en plus si la voiture doit rouler en marche avant ou en
marche arrière.
MaVoiture.Roule(10, Arriere)
Il y a donc 2 manières d’appeler la méthode Roule : avec 1 ou 2 paramètres, on dit que
la méthode est surchargée; chaque manière d'appeler la méthode s'appelle 'signature'.
Première signature: MaVoiture.Roule(100)
Seconde signature: MaVoiture.Roule(10, Arriere)
Evènement:
Tous cela ce sont des images, mais voila, vous avez compris ce qu’est un objet !
B- Et dans Visual Basic.net:
Une application Windows se compose de fenêtres (nommées aussi formulaires) dans
lesquelles se trouvent des contrôles (bouton, liste, texte…)
Exemple de fenêtre avec 2 boutons, une zone de texte (un label) et une icône:
Dans une application Windows, il y a aussi des lignes de code utilisant des
variables pour faire des calculs.
En Visual Basic.Net tout est objet :
les fenêtres (on dit les formulaires),
les variables,
les contrôles (les boutons, liste, image, case à cocher..)
...
Il faut un moule pour faire un objet. Le moule c’est une classe.
Le moule va servir à créer un objet, on dit une instance.
On peut créer, instancier une multitude d’objets avec le même moule.
Pour créer, démouler un objet, on utilise les mots clé Dim et As New.
Dim objet As New Classe
New est un constructeur.
Exemple : créer une fenêtre (un formulaire) :
Je dessine une fenêtre FormDémarrage (c'est la Classe, le moule)
puis
Dim F As New FormDémarrage
Crée une fenêtre qui se nomme 'F' à partir du moule, du modèle (FormDémarrage) que j’ai
dessiné.
Autre exemple :
Dim B as New Button
Créer un bouton nommé 'B' avec les attributs habituels des boutons (Class Button).B est de
type Button.
Troisième exemple:
Comment créer une variable nommée Mavariable pouvant contenir un entier (Integer)
Dim MaVariable As New Integer
Dim MaVariable As Integer 'est correct aussi.
MaVariable est de type Integer.
Ici, pour une variable, on remarque que New peut être omis
Tout objet a des propriétés:
On utilise la syntaxe : Objet.Propriété (Il y a un point entre les 2 mots)
Si F est une fenêtre, F.BackColor indique la couleur de fond de la fenêtre.
S’il y a un bouton, la couleur de fond du bouton sera :
Bouton.BackColor
Ou
F.Bouton.BackColor
Noter la syntaxe : La couleur du bouton qui est dans la fenêtre F
En fait une propriété c'est une sorte de variable.
Autre exemple:
La propriété Visible: si elle a la valeur True (Vraie) l'objet est visible; si elle est à False l'objet n'est
Bouton.Visible=False 'fait disparaître le bouton
<==Ici il y a un bouton invisible!! oui, oui!!
Les objets ont des méthodes parfois.
Une méthode agit sur l'objet ou fait agir l'objet.
Prenons un exemple simplifié.
Les Listes ( liste déroulante) ont des lignes (Items) et une méthode Clear qui permet de les
vider.
Si je veux vider toutes les lignes d'une liste nommé Liste1, je fais:
Liste1.Items.Clear() '
Ce que je vois de l'objet, c'est son interface (le nom des propriétés, méthodes..) exemple: la
méthode Clear fait partie de l'interface d'une ListBox. Par contre le code qui effectue la
méthode (celui qui efface physiquement toutes les lignes de la listeBox),ce code se nomme
implémentation, lui n'est ni visible ni accessible.
Visibilité:
Quand un objet est créé, il est visible et utilisable, uniquement dans la partie du programme
où il a été défini.
Par exemple habituellement, je peux voir et modifier la couleur d'un bouton uniquement dans
le code de la fenêtre ou il est situé.
Pour les variables on parle de portée: la variable peut être locale (Private) ou de portée
générale ('Public') visible partout.
Relation :
Héritage:
Une Classe (un moule) peut hériter d'une autre classe (d'un autre moule).
La classe Button hérite de la classe Control, cela veut dire qu'un bouton est un contrôle.
Si je crée un bouton, il aura les caractéristiques de la classe Button mais aussi de la
classe Control.
Contenant-contenu:
Une Classe peut contenir d'autres classes.
Je peux décider d'un Objet Rectangle va contenir 4 Objets Point
Collections:
Les collections sont des groupes d'objets semblables qui peuvent être énumérés.
Une fenêtre Windows (on dit un 'formulaire' contient une collection nommée 'Controls'
composées de tous les objets (boutons, List, texte) contenus dans la fenêtre:
maFenetre.Controls.item(1) contient par exemple le premier bouton
maFenetre.Controls.item(2) contient par exemple une list.
En résumé :
Principes de la programmation VB
Le programmeur va dessiner l’interface utilisateur (fenêtre, bouton, liste..),
il va ensuite uniquement écrire les actions à effectuer quand certains événements
se produisent sur cette interface.
C’est Visual Basic qui va entièrement s’occuper de la gestion des événements.
Exemple :le premier programme:
Il affiche 'Bonjour' quand on clique sur un bouton.
C'est pas original: le premier programme, dans tous les cours d'informatique,
permet d'afficher 'Bonjour' (ou 'Hello Word').
Que voit l'utilisateur du programme?
L’utilisateur final, celui qui utilise le logiciel, voit une fenêtre avec un bouton,
Si il appuie sur ce bouton il voit s’afficher « Bonjour ».
Que se passe t-il dans le programme?
Quand l'utilisateur clique sur le bouton cela déclenche automatiquement un événement.
(Button1_Click), cet évènement contient du code qui affiche « Bonjour ».
Que doit faire le programmeur pour arriver à ce résultat?
Pour atteindre ce résultat, le programmeur va dessiner la fenêtre, le bouton, la zone
d'affichage du texte (un label) puis il va simplement indiquer dans l'évènement
Button_Click d' afficher « Bonjour ».
Le fait de déterminer la procédure à appeler ou de réaliser l’appel est entièrement pris en
charge par VB.
En pratique, que fait le programmeur:
Cela donne:
Voila votre premier programme est écrit.
C'est plus rapide, lancer l'exécution avec le premier bouton, le second servant à
arrêter temporairement l'exécution, le troisième à terminer l'exécution.
En mode exécution :
L’utilisateur voit bien une fenêtre avec un bouton, s’il clique dessus, « Bonjour » s’affiche.
Quand le programme est totalement écrit, terminé, testé, il est possible de le compiler
et ainsi de créer un fichier exécutable (possédant une extension '.exe') qui fonctionne
de manière autonome en dehors de l'environnement de développement.
C'est ce fichier exécutable qui est fourni à l'utilisateur.
Par opposition le code écrit par le programmeur, composé d'instructions Visual Basic, se
nomme le code source.
En résumé :
Le programmeur utilise des outils de dessin pour construire une interface
utilisateur : des fenêtres avec des contrôles dessus: menus, boutons, case à
cocher..
VB, pour chaque fenêtre ou pour chaque contrôle, génère une liste d’événements,
(Evènement lié au chargement d'une fenêtre, évènement lié au fait de cliquer sur un
bouton, évènement survenant quand on modifie un texte...)
Il suffit, dans la procédure événement qui nous intéresse, d’écrire le code qui doit
être effectué lorsque cet événement survient.
Comme nous l’avons vu le code sert à agir sur l’interface (Afficher un texte,
ouvrir une fenêtre, remplir une liste, un tableau), mais il peut aussi effectuer
des calculs, évaluer des conditions et prendre des décisions, travailler en
boucle de manière répétitive et ainsi effectuer les taches nécessaires .
Lexique anglais=>Français
Button = Bouton.
End =Fin.
Form= formulaire
i
1.2 Les instructions,les n procédures
Qu'est ce qu'une instruction , une procédure? s
Quelle différence entre les procédures: t
liées aux évènement? r
les procédures non liées? u
Les 'Sub', les 'Functions'.
c
Les instructions: t
i
Une instruction est le texte permettant d'effectuer une opération, une déclaration, une
o
définition.
Dim A As Integer est une instruction (de 1 ndéclaration)
A=1 est aussi une instruction qui effectue. sune opération.
C'est habituellement une 'ligne de code 2 ,
exécutable'.
l
Une instruction est exécutée lorsque le programme marche.
Plusieurs instructions peuvent se suivreesur une même ligne, séparées par ':'
Dim B As String : B="Bonjour" s
Si une ligne est très longue, on peut passer à la ligne grâce à ' _'
p
r
o
c
é
d
(caractère 'Espace' puis caractère"_" puis immédiatement après, passage à la ligne) :
Dim B As String = "Bonjour monsieur ": C= _
"le professeur"
est équivalent à:
Dim B As String = "Bonjour monsieur ": C= "le professeur"
Quand un programme tourne, les instructions sont effectuées ligne après ligne.
1 Dim B As String
2 B="Bonjour"
3 Dim A As Integer
4 A= 3
5 A= A + 1
La ligne 1 est exécutée puis la ligne 2 puis la 3, la 4...
Bien que l'on puisse avoir des numéros de ligne, ils ne sont plus utilisés actuellement
et non visibles:
Dim B As String
B="Bonjour"
Dim A As Integer
A= 3
A= A + 1
Pour mettre des commentaires dans un programme, on le fait précéder de "'" .
'Ceci est un commentaire, ce n'est pas une instruction.
Le commentaire ne sera pas exécuté.
Les procédures:
Une procédure est un ensemble d'instructions, de lignes de code, un groupement
d'instructions bien définies effectuant une tache précise.
Les procédures sont bien délimitées:
Il y en a de 2 sortes:
Les procédures Sub:
Elles débutent par le mot Sub et se terminent par End Sub.
Les procédures Function:
Elles débutent par Function et se terminent par End Function.
Exemple:
Sub Maprocédure
A=1
End Sub
Exemple concret d'une procédure: la procédure Button_Click du premier
programme.(Celui qui affiche 'Bonjour'; elle ne contient qu'une ligne de code. Le mot
Sub est précédé de Private, on verra plus loin ce que cela signifie.
Vous avez vu que l’on peut dessiner l'interface, une fenêtre
Form1 par exemple. En mode conception, après avoir dessiné
l’interface, on doit avoir accès aux procédures.
Si on double-clique sur la fenêtre, on a accès aux
procédures évènement liées à cette fenêtre, si on double-clique
sur un objet (bouton, case à cocher… on voit apparaître les
procédures évènement de ce contrôle.
Exit Function permet aussi de sortir de la fonction, cela a le même effet que Return
sauf que Return peut être suivi d'un argument de retour (et pas Exit Function).
Module standard :
La sub AfficheSurfaceCercle affiche le résultat dans le formulaire où elle est située.
Par contre la fonction SurfaceCercle est d’intérêt général, n’importe quelle procédure
doit pouvoir l’appeler, de plus elle n’intervient pas sur les contrôles des formulaires et
n’est donc pas liée aux formulaires.
On la placera donc dans un module standard qui est un module du programme qui ne
contient que du code. (Pas d’interface utilisateur)
Pour créer un module standard Menu Projet>Ajouter un module.
Y mettre les procédures.
Private Public :
Avant le mot Sub ou Function on peut ajouter :
Private indiquant que la procédure est accessible uniquement dans le module.
C’est donc une procédure privée.
Les procédures liées aux évènements d’une feuille sont privées par défaut.
Call = Appel.
Return= Retour.
Private= Privé.
Show= spectacle, exposition.
To show= montrer.
L'IDE.
de Visual Basic.Net 2005
C'est l'Integrated Development Environment (IDE): Environnement de
développement intégré de Visual Studio de Microsoft 2005
Fenêtre Projet:
Quand on lance VB.net 2005 , le logiciel présente une Page de démarrage "Start
Page" qui permet:
d'ouvrir un projet existant Ouvrir (Recent Projects ou Open)
ou
de créer un nouveau projet:Créer (Create)
Pour créer un projet Visual Basic normal (WinForms), il faudra choisir 'Creer'. La fenêtre
suivante s'ouvre:
Choisir l'icône 'Application Windows', puis donner un nom au projet, enfin valider sur 'Ok'.
(Le chemin de l'emplacement du projet n'est pas modifiable ici, il est par défaut '
C:\Documents and Settings\Nom Utilisateur\Mes documents\Visual Studio 2005\
Projects\MonProjet')
Dans un nouveau projet, créer ou ajouter une fenêtre :
Pour ajouter un fenêtre (un formulaire) Menu Project,Ajouter un formulaire Windows
( Add a WindowsForms ):
cliquer sur Windows Form, une fenêtre (un formulaire) ‘Form2’ vide apparaît ('Form1'
était le nom du premier formulaire).
Il y a des fenêtres toutes faites pour accélérer le travail (les templates) comme les
'Ecran de démarrage' les 'Formulaire Explorateur'...
Il suffit de cliquer sur la ligne Form1 dans l'explorateur de solution pour voir apparaître
la Form1 dans la fenêtre principale.
Si on clique sur un espace de noms dans la liste Références, cela montre
l'arborescence des Classes .
Tester son logiciel:
On peut tester le projet grâce à : lancer l'exécution avec le
premier bouton (mode 'Run', le second servant à arrêter
temporairement l'exécution (mode 'Debug'), le troisième à
terminer l'exécution (Retour au mode 'Design' ou 'Conception').
Quand on est en arrêt temporaire en mode 'Debug', la ligne
courante, celle qui va être effectuée, est en jaune:
For i=0 To 100
Label1.Text=i.ToString
Next i
Il y a maintenant le 'Edit and continue': en mode Debug, on peut modifier une ligne et
poursuivre le programme qui tiendra compte de la modification (Sauf pour les
déclarations).
La sauvegarde du projet se fait comme dans tous les logiciels en cliquant sur l'icône du
paquet de disquettes.
On peut compiler le programme pour créer un exécutable par le menu Générer ('Build').
Projet et solutions:
Dans la terminologie VB, un projet est une application en cours de développement.
Un Team Project regroupe un ou plusieurs projets (C'est un groupe de projets). Il n'y en
a pas dans la version express.
Fichiers, Chemins des sources:
Si vous regardez dans ' C:\Documents and Settings\Nom Utilisateur\Mes
documents\Visual Studio 2005\ Projects\MonProjet')les fichiers correspondant à un
projet VB:
MonProjet.sln est le fichier solution.
MonProjet.psess est le fichier de performance.
MonProjet.suo est le fichier de User solution.
Dessous existe un répertoire nommé aussi MonProjet qui contient:
MonProjet.vbProj
Form1.vb contient les procédures.
Form1.Designer.vb contient le code qui créer la fenêtre et les contrôles.
Si on compile le projet l'exécutable est dans un sous répertoire \Bin, il y a aussi un
répertoire Obj
VB propose des AIDES:
Quand on tape du code, VB affiche, des aides:
VB permet de choisir dans une liste une des propriétés d'un objet.
Exemple: Je tape le nom d'un label nommé label1 puis je tape un point, cela me donne
la liste des propriétés du label.
Quand je pointe dans la liste un des membres (propriété ou méthode) un carré jaune
affiche la définition de la fonction avec ses paramètres et une explication.
VB aide à retrouver les paramètres d'une fonction:
Si on tape le nom d'une fonction et ( , VB affiche les paramètres possibles dans
un cadre.
En plus il affiche les différentes manières d'utiliser les paramètres (les différentes
signatures), on peut les faire défiler avec les petites flèches du cadre jaune.
VB aide à compléter des mots.
Si je tape App puis sur le bouton 'A->', Vb affiche la liste des mots commençant pas
App
AppActivate
AppDomain
Génial!!
Vb propose des solutions pour corriger les erreurs de code:
Si je veux afficher une valeur numérique (avec option Strict=On),il y a erreur, VB me
propose la correction:
Il existe une abondante documentation:
VB donne accès à l'aide sur un mot Clé. Si le curseur passe sur un mot clé, un carré
affiche la définition de la fonction. Si je clique sur un mot et que je tape F1 l'aide s'ouvre
et un long texte donne toutes les explications.
-VB donne accès à l'aide sur les contrôles. Si le curseur est sur un contrôle et que je
tape F1 l'aide s'ouvre pour donner accès à la description des différents membres de cet
objet.
Enfin il est toujours possible de rechercher des informations
1.Sommaire (plan , arbre de l'aide)
2.Index (liste des mots)
3.Recherche (rechercher un mot)
Erreur:
S'il existe une erreur dans le code au cours de la conception, celle-ci est soulignée en
bleu ondulé. Un carré donne la cause de l'erreur si le curseur passe sur la zone ou se
trouve l'erreur.
Ici la propriété 'Text' a été mal orthographiée.
Si je lance le programme en mode 'Run' et qu'il y a des erreurs, Vb me le signale et
répertorie les erreurs dans la liste des taches en bas. Vb propose des solutions pour
corriger les erreurs de code. (Voir plus haut)
Mode débogage (mode BREAK):
Une fois lancée l'exécution (F5), puis stoppée (Ctrl +Alt +Pause), on peut:
Voir la valeur d'une propriété d'un objet en le pointant avec la souris:
Une autre manière d'ouvrir le 'Projet Designer' est de passer par les menus 'Projet'
puis 'Propriétés de..'
On retrouve dans le projet designer:
Le nom de l'application, son icône, la fenêtre de démarrage, celle de fin. (Application)
Les Option Strict, Explicit.(Compiler)
Les références (dll liées au projet)
Les paramètres (valeurs liées à l'application)
Les ressources (texte, images, sons utilisées dans le programme)
La signature et la sécurité.
Les paramètres relatifs à la publication (distribution et installation)
Conclusion:
Lexique anglais=>Français
Return = Retour.
1.3 Introduction au langage.
Nous allons étudier:
Le langage Visual Basic.Net qui est utilisé dans les procédures.
ou un label: Label1.Text="Résultat"
ou
sur la console: Consol.Out.WriteLine ("Résultat")
ou
dans une Boite de message: MsgBox("Voulez vous continuer?")
1.4 Les Algorithmes
A- Pour écrire un programme.
B- Définition de l'algorithme.
C- Principe généraux
Séquences
Notion de variable
Notion de constante
Affectation
Booléens
Choix
Répétition
Logique: ET, OU, NON
Saut
Programmation structurée
Sous programmes, fonctions
Tableaux
Collections
Pile, Queue
Liste chaînée
Notion de Clé
Hachage
Sécurisation
Flag et variables d'état.
D -Code source, exécutable, interprétation, compilation.
E -Quelques algorithmes.
Recherche dans un tableau
Tri de tableau
A - Pour écrire un programme:
Pour écrire un programme, aller du problème à résoudre à un programme exécutable, il faut
passer par les phases suivantes:
Analyse du cahier des charges.
Il doit être clair, exhaustif, structuré.
Analyse générale du problème.
Il existe des méthodes pour professionnels (MERISE, JACKSON..), nous utiliserons plutôt
l'analyse fonctionnelle: Le problème global est découpé en sous problèmes nommés fonctions.
Chaque fonction ne contient plus qu'une partie du problème. Si une fonction est encore trop
complexe, on itère le processus par de nouvelles fonctions à un niveau plus bas.
Cela se nomme la 'Conception structurée descendante'. La 'Conception ascendante' existe aussi:
en assemblant des fonctions préexistantes, on résout le problème: attention, il faut que les
fonctions préexistantes soient cohérentes. (Pour le moment on ne fait pas de programmation objet)
Analyse détaillée.
Chaque fonction est mise en forme, la logique de la fonction est écrite dans un pseudo langage
(ou pseudo code) détaillant le fonctionnement de la fonction. Ce pseudo code est universel , il
comporte des mots du langage courant ainsi que des mots relatifs aux structures de contrôle
retrouvées dans tous les langages de programmation.
Codage.
Traduction du pseudo code dans le langage que vous utilisez.
Test
Car il faut que le programme soit valide.
Exemple simpliste:
Analyse du cahier des charges.
Création d'un programme affichant les tables de multiplication, d'addition, de soustraction.
Analyse générale du problème.
Découpons le programme en diverses fonctions:
Il faut créer une fonction 'Choix de l'opération', une fonction 'Choix de la table', une fonction
'TabledeMultiplication', une fonction 'TabledAddition', une fonction 'Affiche'...
Analyse détaillée.
Détaillons la fonction 'TabledeMultiplication'
Elle devra traiter successivement (pour la table des 7 par exemple)
1X7
2X7
3X7..
Voici l'algorithme en pseudo code.
Début
Pour i allant de 1 à 10
Ecrire (i*7)
Fin Pour
Fin
Codage.
Traduction du pseudo code en Visual Basic, en respectant la syntaxe du VB.
Sub MultiplicationPar7
Dim i As Integer
For i=1 to 10
Call Affiche(i*7)
next i.
End Sub
Test
Ici il suffit de lancer le programme pour voir si il marche bien..
la répétition qui indique que des instructions doivent être exécutées plusieurs fois.
Le code est fait d’une succession de lignes (ou instructions) qui seront lues et traitées les unes
après les autres.
Instruction 1
Instruction 2
Instruction 3
..
En VB on peut mettre plusieurs instructions sur la même ligne séparées par ":"
Instruction1 : Instruction2
Les variables, leur 'Type':
Type numérique:
'Entier'(Integer en VB), 'réel'.. (Single en VB) Exemple d'un entier: 123
Type alphanumérique:
'Caractère' (Char en VB) contient 1 caractère. Exemple d'un caractère: "a" (avec des g
'Chaîne de caractères',(String en VB), contient plusieurs caractères. Exemple: "toto" (a
Autres Type:
Booléen (Boolean en VB) ne peut contenir que True ou False ('Vrai' ou 'Faux').
Objet. (Object en VB)
Monétaire (Décimal en VB)
Date (Date en VB)
A partir des types précédents on peut créer des types complexes (ou structurés):
Les tableaux (Array).
Les Collections.
On peut aussi initialiser une variable c'est à dire définir sa valeur initiale.
On peut utiliser un littéral: c'est une donnée utilisée directement: sa valeur est écrite
directement dans le code.
X <- 2 veut dire: donner à la valeur X la valeur 2 ( 2 est une littéral)
En VB: X = 2
Constante:
Comme une variable, une Constante a un Nom (identifiant) et un Type. Elle contient
une valeur: un nombre, une chaîne de caractères..
Son contenu ne peut pas être modifié.
Constante A en Numérique =12
En VB: Const A As Integer =12
Ensuite on ne peut pas modifier sa valeur, on ne peut que la lire.
Affectation ( ou Assignation):
C'est une instruction consistant à donner une valeur à une variable.
En langage algorithmique on l'indique par '<-'
X <- 2 veut dire: donner à la valeur X la valeur 2 ( 2 est une littéral)
Z <- X veut dire: donner à la variable Z la valeur de la variable X .
Z <- X+1 veut dire: donner à la variable Z la valeur de la variable X à laquelle on
ajoute 1 (Z prendra la valeur 2+1 =3).
Cela revient à évaluer l'expression de droite et à en mettre la valeur dans la
variable de gauche.
En VB le signe d'affectation est '=' on écrit donc:
Z=X+1
Attention ce n'est pas le même sens qu'en mathématique.
Si on écrit:
Variable A en Numérique
Variable B en Alphanumérique
B<-'toto'
A<-B 'cela ne fonctionne pas car on tente de mettre le contenue de B qui est
alphanumérique dans une variable numérique.
Si Condition Alors
Action 1
Sinon
Action 2
Fin Si
Si Condition est vraie Action 1 est effectuée, sinon Action 2 est effectué.
Variable x en Numerique
Variable y en Numerique
Variable max en Numerique
Si x>y Alors
max<-x
Sinon
Max<-y
Fin Si
En VB
Dim x As Integer
Dim y As Integer
DIm max As Integer
if x>y Then
max=x
else
max=y
End if
Les choix: Sélectionner (Décider entre) :
Il est parfois nécessaire d’effectuer un choix parmi plusieurs solutions :
On parle de sélection :
Sélectionner.
Le cas : condition 1
Action 1
Le cas : condition 2
Action 2
..
Les autres cas
FinSélectionner
Si la condition 1 est remplie Action 1 est effectuée puis le programme saute après
FinSelectionner.
Si la condition 1 n’est pas remplie, on teste la condition 2..
Si aucune condition n’est remplie on saute à Les autres cas, on effectue Action 4.
On parle parfois de Décider Entre dans certains cours d'algorithme.
En VB cela correspond à
Select Case Valeur
Case condition 1
Action 1
Case condition 2
Action 2
..
Case Else
Action 4
End Select
Si Valeur=Condition 1 Action 1 est effectuée, si Valeur=Condition 2 Action 2 est
effectuée...
Les répétitions: Pour...Répéter
Permet de répéter une séquence un nombre de fois déterminé :
En VB
For i=0 To N
..
Next i
L'instruction Exit For permet de sortir prématurément de la boucle.
En VB :
For each… In
Next
On faisait des sauts dans tous les sens!! Code illisible, non structuré.
Variable A en Numérique
Variable B en Numérique
Variable C en Numérique
B<-12
A<-B
Si A=B Alors
C<-1
Sinon
C<-2
Fin Si
'Procédure':
On a déjà vu cette notion.
Une procédure est un ensemble d'instructions référencée par un nom et
dont l'exécution est provoquée par le simple énoncé de ce nom.
Quand on appelle une procédure, le logiciel ‘saute’ à la procédure, il
effectue celle-ci puis revient effectuer ce qui suit l’appel.
En algorithmie, une procédure commence par le mot Proc et se termine par
End Proc.
Instruction 1
Instruction 2 Proc MaProcédure
MaProcédure()3 Instruction 10
Instruction 4 Instruction 11
Instruction 5 End Proc
Le programme effectuera les instructions 1, 2, 3, 10, 11, 4, 5.
Une opération complexe peut être découpée en plusieurs procédures ou sous-programmes plus
petits et plus simples qui seront appelés.
Chaque procédure résout un problème.
Si dans un programme il y a des suites d'instructions qui effectuent la même action, cela plusieurs
fois, on peut créer une procédure contenant la suite d'instructions; elle sera appelée de plusieurs
endroits du programme.
On peut fournir aux procédures des paramètres, ce sont des variables qui seront transmises à
la procédure.
Exemple:
Création d'une Procédure 'MaProcédure' recevant 2 paramètres:
Proc MaProcédure(paramètre1, paramètre2)
..
End Proc
Parfois on a besoin que la procédure appelée retourne une valeur dans ce cas il faut
créer une fonction:
Function MaFonction() En Integer 'MaFonction qui retourne un entier
..
Retourne Valeur
End Function
Exemple de fonction: créer une fonction qui retourne le plus petit nombre:
Fonction Minimum (x en Numerique, y en Numérique) en numérique
Si x<y Alors
Retourner x
Sinon
Retourner y
Fin Si
Fin Fonction
Pour l'utiliser:
Variable Min en Numerique
Min<-Minimum (5,7) 'Appelle la fonction en donnant les 2 paramètres 5 et 7.
Min contient maintenant 5
Et VB les sous-programmes (ou procédures) sont des Sub(procédures) ou des Function. Pour
appeler une procédure on utilise Call NomProcedure() ou NomProcedure()
En Vb
Function Minimum(x As Integer, y As Integer) As Integer
If x<y Then
Return x
Else
Return y
End If
End Function
Pour l'utiliser:
Dim min As Integer
Min= Minimum (5,7)
Notion de 'tableau':
Un tableau de variables permet de stocker plusieurs variables de même type sous un même
nom de variable, chaque élément étant repéré par un index ou indice.
C'est une suite finie d'éléments. 3
Soit un tableau A de 4 éléments 1
2
3 4
12 0
4
0
Pour accéder à un élément il faut utiliser l'indice de cet élément.
L'élément d'index 0 se nomme A[0] et contient la valeur 3.
On remarque que le premier élément est l'élément d'index 0 (ZERO) en .Net.
L'élément d'index 1 se nomme A[1] et contient la valeur 12.
Quand on crée un tableau, il a un nombre d'éléments bien défini: 4 dans notre
exemple d'index 0 à 3.
Pour donner une valeur à un des éléments , on affecte la valeur à l'élément.
A[2] <- 4
Pour lire une valeur dans un tableau et l'affecter à une variable x:
x <- A[2]
Traduction en VB
A(2)=4
x = A(2)
Pour parcourir tous les éléments d'un tableau on utilise une boucle:
Exemple: afficher tous les éléments du tableau tab qui contient n éléments.
début
Pour i allant de 0 à n-1 Répéter
écrire(tab[i])
Fin Répéter
fin
En VB:
For i=0 to n-1
Affiche ( tab(i)) 'routine d'affichage
Next i