Operation en visual basic .net

Résolu
WebAntoine Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -  
 Profil bloqué -
Bonjour,

J'ai créer un programme qui additionne ou soustrait ou multiplie ou encore divise deux chiffres, il me met comme resultat zero a chaque fois ! quel est le probleme ?

Voici le code source :

Public Class Form1
    Dim operation As String


    Private Function addition(ByVal chiffre1 As Integer, ByVal chiffre2 As Integer)
        Dim Resultat As Integer
        If operation = "addition" Then
            Resultat = chiffre1 + chiffre2
        ElseIf operation = "soustraction" Then
            Resultat = chiffre1 - chiffre2
        ElseIf operation = "multiplication" Then
            Resultat = chiffre1 * chiffre2
        ElseIf operation = "division" Then
            Resultat = chiffre1 / chiffre2
        End If
        Return Resultat
    End Function

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Label1.Text = "le resultat est : " & addition(TextBox1.Text, TextBox2.Text)
        MsgBox(ComboBox1.SelectedItem)
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        If ComboBox1.SelectedItem = "+" Then
            operation = "addition"
        ElseIf ComboBox1.SelectedItem = "-" Then
            operation = "soustraction"
        ElseIf ComboBox1.SelectedItem = "x" Then
            operation = "multiplication"
        ElseIf ComboBox1.SelectedItem = "/" Then
            operation = "division"
        End If
    End Sub
End Class


A voir également:

2 réponses

Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Bonjour,

A quel moment est affecté la valeur de la variable "opération" ?

A 1ère vue, c'est le choix de Combobox1 qui détermine de l'opérateur. C'est donc sur l'évènement click du bouton 1 qu'il faut initialiser "operation" en faisant un contrôle sur le contenu de la sélection du combobox1 pour s'assurer qu'il y a bien un élément sélectionné.

;o)
1
WebAntoine Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
Merci beaucoup !
0
Profil bloqué
 
Le VB commence à être bien loin pour moi, cependant, de mémoire, il me semble que tu as oubliés quelques end if là dedans

If operation = "addition" Then
Resultat = chiffre1 + chiffre2
ElseIf operation = "soustraction" Then
Resultat = chiffre1 - chiffre2
ElseIf operation = "multiplication" Then
Resultat = chiffre1 * chiffre2
ElseIf operation = "division" Then
Resultat = chiffre1 / chiffre2
End If

genre

If operation = "addition" Then
Resultat = chiffre1 + chiffre2
ElseIf operation = "soustraction" Then
Resultat = chiffre1 - chiffre2
End If
ElseIf operation = "multiplication" Then
Resultat = chiffre1 * chiffre2
End If
ElseIf operation = "division" Then
Resultat = chiffre1 / chiffre2
End If
End If
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Pour info et re mémorisation, la syntaxe If .... Then ... ElseIf ... Then .... ElseIf .... Then .... End If est correct. De plus l'Editeur VB soulève l'erreur de syntaxe et empêche l'exécution du code.

Le problème vient de l'initialisation de la variable "operation".

;o)
0
WebAntoine Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
 
oui il n'y a pas de probleme de end if
0
Profil bloqué
 
Autant pour moi ! :D
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Pas de souci Varaldi Q, je l'ai signalé pour info et pour ne pas semer la confusion pour ceux qui rencontreraient le même problème.
0
Profil bloqué
 
Oui, c'est cool de l'avoir rappelé ;)
0