Apprenez à programmer en VB .NET

Apprenez à programmer en VB .NET

Mis à jour le lundi 24 juin 2013

Nous voici en possession de notre nouvel outil : les variables.

Le monde des variables étant gigantesque, nous allons encore les étudier pendant un chapitre.

Maintenant que nous savons comment les déclarer et les utiliser, nous allons apprendre à les modifier de différentes façons. Viendront ensuite les opérations mathématiques, la concaténation, les commentaires et, pour finir, la lecture de valeurs depuis la console.

Je ne vous en dis pas plus, il faut maintenant s'y mettre.

Opérations sur une variable

Nous allons à présent apprendre à modifier des variables, et effectuer des opérations avec elles.

Voici un exemple : vous souhaitez créer un programme qui calcule la somme de deux nombres ; pour ce faire, il vous faudra utiliser des opérations. Je vais vous expliquer la marche à suivre.

Reprenons notre programme, déclarons-y une variable MaVariable en Integer et assignons-lui la valeur 5 (ce qui, normalement, est déjà fait).
Déclarons maintenant une seconde variable intitulée MaVariable2, de nouveau en Integer, et assignons-lui cette fois la valeur 0.

Si vous avez correctement suivi la démarche, vous devriez obtenir le résultat suivant :

Module Module1
    Sub Main()
        Dim MaVariable As Integer
        Dim MaVariable2 As Integer
        MaVariable = 5
        MaVariable2 = 0
        Console.Write(MaVariable)
        Console.Read()
    End Sub
End Module

Dans le cas où vous avez plusieurs variables du même type, vous pouvez rassembler leur déclaration comme suit :

Dim MaVariable, MaVariable2 As Integer

Vous pouvez également initialiser vos variables dès leur déclaration, comme ci-dessous, ce qui est pratique pour les déclarations rapides.

Dim MaVariable As Integer = 5
À l'attaque

Passons maintenant au concret !

On va additionner un nombre à notre variable MaVariable. Pour ce faire, rien de plus simple ! Démonstration.

MaVariable + 5

Voilà ! Simple, n'est-ce pas ? En résumé, vous avez additionné 5 à la variable MaVariable. Le programme a effectué cette opération. Seulement, le résultat n'est allé nulle part : nous n'avons pas mis le signe égal (« = ») !

Heu… tu nous fais faire n'importe quoi ? :o

Mais non, c'est pour vous montrer ce qu'il faut faire et ce qu'il ne faut pas faire. :D Imaginez un parent mettre ses doigts dans la prise et montrer à bébé l'effet que cela produit ; il comprendra tout de suite mieux ! :-° (Mauvais exemple.)

Pour y remédier, il faut ajouter le signe égal, comme lorsque nous initialisons nos variables.

MaVariable2 = MaVariable + 5

Nous allons donc nous retrouver avec… 10, dans la variable MaVariable2.

À noter que nous avons initialisé MaVariable2 avec 0. Si nous l'avions fait, par exemple, avec 7, le résultat aurait été identique puisque, souvenez-vous, l'entrée d'une valeur dans une variable écrase l'ancienne.

Plus en profondeur…

Vous savez à présent comment additionner un nombre à une variable. Nous allons donc découvrir les autres opérations possibles.

Opération souhaitée

Symbole

Addition

+

Soustraction

-

Multiplication

*

Division

/

Division entière

\

Puissance

^

Modulo

Mod

J'explique ce petit tableau par un exemple : nous avons appris que, pour additionner 3 et 2, la syntaxe est 3+2. C'est évident, me direz-vous… mais si je vous avais demandé de diviser 10 par 5, comment auriez-vous procédé ?

Eh bien, désormais, vous savez à quel caractère correspond chaque opération, la division de 10 par 5 aurait donc été : 10/5.

x = 14
y = 3

x mod y = 2
x \ y = 4
x / y = 4.666666
x ^ y = 2 744

Qu'est-ce que le modulo ?

Très bonne question. Le modulo est une opération spécifique en programmation, qui permet de récupérer le reste d'une division.

Exemples :

  • 10 mod 5 correspond à 10/5 ; le résultat est 2, le reste est 0, donc 10 mod 5 = 0.

  • 14 mod 3 correspond à 14/3 ; le résultat est 4, le reste 2, donc 14 mod 3 = 2.

Nous allons immédiatement mettre en pratique ces informations. Toutes les instructions que nous allons ajouter se feront dans le Main().

Essayez d'attribuer des valeurs à vos variables et d'effectuer des opérations entre elles pour finalement stocker le résultat dans une troisième variable et afficher le tout.

Petite parenthèse : je vais en profiter pour vous expliquer comment écrire sur plusieurs lignes.
Si vous écrivez une fonction Write, puis une autre en dessous de façon à donner ceci :

Console.Write("test")
Console.Write("test")

… vous allez vous retrouver avec le résultat suivant :

testtest

Afin d'écrire sur deux lignes, on va utiliser le procédé le plus simple pour le moment, qui est la fonction WriteLine(). Elle prend aussi comme argument la variable ou le texte à afficher, mais insère un retour à la ligne au bout. Un code du genre…

Console.WriteLine("test")
Console.WriteLine("test")

… produira le résultat suivant :

test
test

Avec ces nouvelles informations, essayez donc de multiplier 8 par 9 (chaque nombre mis au préalable dans une variable), le tout étant entré dans une troisième variable. En outre, un petit supplément serait d'afficher l'opération que vous faites.

Je vous laisse chercher ! :)

Module Module1
    Sub Main()
        Dim MaVariable As Integer
        Dim MaVariable2 As Integer
        Dim MaVariable3 As Integer

        MaVariable = 8
        MaVariable2 = 9
        MaVariable3 = MaVariable * MaVariable2

        Console.Write("9 x 8 = ")
        Console.Write(MaVariable3)

        Console.Read()
    End Sub
End Module

Ce code, que j'ai tenté d'écrire de la façon la plus claire possible, nous affiche donc ceci :

9 x 8 = 72

Essayez de modifier les valeurs des variables, l'opération, etc.

Différentes syntaxes

Nous avons donc créé un code affichant 9 x 8 = 72. Ce code, comme vous l'avez certainement constaté, est très long pour le peu qu'il fait ; pourtant, je vous ai donné quelques astuces.

Mon code peut donc être simplifié de plusieurs manières.

Tout d'abord, l'initialisation lors de la déclaration :

Dim MaVariable As Integer = 8
Dim MaVariable2 As Integer = 9
Dim MaVariable3 As Integer = 0

Puis, un seul Write :

Console.Write("9 x 8 = " & MaVariable3)

Wow, du calme ! À quoi sert le signe & ?

Bonne question. C'est ce qu'on appelle la concaténation, elle permet d'assembler deux éléments en un ; ici, par exemple, j'ai assemblé la chaîne de caractères "9 x 8 = " et le contenu de la variable, ce qui aura pour effet de m'afficher directement 9 x 8 = 72 (je parle d'assembler deux éléments en un, car en faisant cela on assemble le tout dans le même argument).

Dernière amélioration possible : la suppression d'une variable intermédiaire ; on se retrouve à faire l'opération directement dans le Write.

Console.Write("9 x 8 = " & MaVariable * MaVariable2)

Ah, bah, autant effectuer directement le 9 * 8 en utilisant la concaténation !

Oui, effectivement. Mais dans ce cas, vos variables ne servent plus à rien et cette instruction ne sera valable que pour faire 9 * 8

Grâce à ces modifications, notre code devient plus clair :

Module Module1
    Sub Main()
        Dim MaVariable As Integer = 8
        Dim MaVariable2 As Integer = 9

        Console.Write("9 x 8 = " & MaVariable * MaVariable2)

        Console.Read()
    End Sub
End Module

Pour cela, la parade arrive (eh oui, il y en a toujours une ; du moins, presque) ! :magicien:

Les commentaires

Les commentaires vont nous servir à éclaircir le code. Ce sont des phrases ou des indications que le programmeur laisse pour lui-même ou pour ceux qui travaillent avec lui sur le même code.

Une ligne est considérée comme commentée si le caractère « ' » (autrement dit, une simple quote) la précède ; une ligne peut aussi n'être commentée qu'à un certain niveau.

Exemples :

'Commentaire
MaVariable = 9 * 6 ' Multiplie 9 et 6 et entre le résultat dans MaVariable

Par exemple, voici notre programme dûment commenté :

Module Module1
    Sub Main()
        'Initialisation des variables
        Dim MaVariable As Integer = 8
        Dim MaVariable2 As Integer = 9

        'Affiche "9 x 8 = " puis le résultat (multiplication de MaVariable par MaVariable2)
        Console.Write("9 x 8 = " & MaVariable * MaVariable2)

        'Crée une pause factice de la console
        Console.Read()
    End Sub
End Module

Autre chose : si vous voulez commenter plusieurs lignes rapidement, ce qui est pratique lorsque vous testez le programme avec d'autres fonctions mais que vous souhaitez garder les anciennes si cela ne fonctionne pas, Visual Basic Express vous permet de le faire avec son interface. Sélectionnez pour cela les lignes souhaitées, puis cliquez sur le bouton que j'ai décrit dans la barre d'outils et qui porte le nom « Commenter les lignes sélectionnées ».

Vous allez sûrement trouver cela long, fastidieux et inutile au début, mais plus tard, cela deviendra une habitude, et vous les insérerez sans que je vous le dise.

Il existe d'autres astuces pour expliquer et trier son code, que j'aborderai lorsque nous créerons nos propres fonctions.

Lire une valeur en console

Je vais immédiatement aborder ce passage, mais assez sommairement puisqu'il ne sera valable qu'en mode console.

Pour lire en mode console, par exemple si vous souhaitez que l'utilisateur saisisse deux nombres que vous additionnerez, il vous faut utiliser la fonction ReadLine(). Nous avions utilisé Read, mais cette fonction lit uniquement un caractère, elle est donc inutile pour les nombres supérieurs à 9.

Notre nouvelle fonction s'utilise de la manière suivante :

MaVariable = Console.ReadLine()

Vous avez donc certainement déjà dû écrire ce code, qui multiplie les deux nombres entrés :

Module Module1
    Sub Main()
        'Initialisation des variables
        Dim MaVariable As Integer = 0
        Dim MaVariable2 As Integer = 0

        Console.WriteLine("- Multiplication de deux nombres -")

        'Demande du premier nombre stocké dans MaVariable
        Console.WriteLine("Veuillez entrer le premier nombre")
        MaVariable = Console.ReadLine()
        'Demande du second nombre stocké dans MaVariable2
        Console.WriteLine("Veuillez entrer le second nombre")
        MaVariable2 = Console.ReadLine()

        'Affiche "X x Y = " puis le résultat (multiplication de MaVariable par MaVariable2)
        Console.WriteLine(MaVariable & " x " & MaVariable2 & " = " & MaVariable * MaVariable2)

        'Crée une pause factice de la console
        Console.ReadLine()
    End Sub
End Module

Ce programme demande donc les deux nombres, l'un puis l'autre, et les multiplie.

Ce qui nous amène à notre prochain chapitre : les boucles conditionnelles.

  • Une variable peut stocker différentes valeurs.

  • Les variables ont un type leur permettant de stocker des informations spécifiques : numérique, chaîne de caractères, etc.

  • Le modulo permet de retourner le reste d'une division entière.

  • Les commentaires sont des lignes de code non exécutées, uniquement destinées au programmeur, elles sont précédées par une apostrophe : « ' ».

  • L'instruction Console.Writeline permet d'afficher un message à la console.

Exemple de certificat de réussite
Exemple de certificat de réussite