Bonjour, voici mon programme(ci-dessous), tout d'abord l'utilisateur selectionne la branche n°1, rentre les caractéristiques correspondantes,puis clique sur le bouton branche suivante. Il faudrait alors revenir sur cette page pour renter les valeurs de la branche 2 en ayant gardé en mémoire les valeurs précédentes (branche 1). Ainsi, lorsqu'on clique sur le boutton Calcul, on obtiendra un résultat liant les deux branches qu'elles soient en série ou en parallèle. Mais mon probleme est bien celui de la mémorisation, je me débrouillerais seul l pour le reste.


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
Private Sub ButtonCalcul2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonCalcul2.Click
        If Verification() Then
            Me.LabelQmax.Text = "Q = " & CalculCaquot().ToString("0.0#") & " litres par seconde"
        Else
            Me.erreur2.Visible = True
        End If
    End Sub
 
    Function Verification() As Boolean
        Dim Bon As Boolean = True
        If Me.Labela2.Text Is Nothing Or Not IsNumeric(Me.Labela2.Text) Then
            MessageBox.Show("Entrez une valeur numérique pour a")
            Bon = False
        Else
            Select Case CType(Me.Labela2.Text, Double)
                Case Is < 0
                    MessageBox.Show("Entrez une valeur positive pour a")
                    Bon = False
            End Select
        End If
        If Me.Labelb2.Text Is Nothing Or Not IsNumeric(Me.Labelb2.Text) Then
            MessageBox.Show("Entrez une valeur numérique pour b")
            Bon = False
        Else
            Select Case CType(Me.Labelb2.Text, Double)
                Case Is < 0
                    MessageBox.Show("Entrez une valeur positive pour b")
                    Bon = False
 
                Case Is > 1
                    MessageBox.Show("Entrez une valeur entre 0 et 1 pour b")
                    Bon = False
            End Select
        End If
        If Me.LabelS2.Text Is Nothing Or Not IsNumeric(Me.LabelS2.Text) Then
            MessageBox.Show("Entrez une valeur numérique pour S")
            Bon = False
        Else
            Select Case CType(Me.LabelS2.Text, Double)
                Case Is < 0
                    MessageBox.Show("Entrez une valeur positive pour S")
                    Bon = False
            End Select
        End If
        If Me.LabelL.Text Is Nothing Or Not IsNumeric(Me.LabelL.Text) Then
            MessageBox.Show("Entrez une valeur numérique pour L")
            Bon = False
        Else
            Select Case CType(Me.LabelL.Text, Double)
                Case Is < 0
                    MessageBox.Show("Entrez une valeur positive pour L")
                    Bon = False
            End Select
        End If
        If Me.LabelC.Text Is Nothing Or Not IsNumeric(Me.LabelC.Text) Then
            MessageBox.Show("Entrez une valeur numérique pour C")
            Bon = False
        Else
            Select Case CType(Me.LabelC.Text, Double)
                Case Is < 0
                    MessageBox.Show("Entrez une valeur positive pour C")
                    Bon = False
                Case Is > 1
                    MessageBox.Show("Entrez une valeur entre 0 et 1 pour C")
                    Bon = False
            End Select
        End If
        If Me.LabelI.Text Is Nothing Or Not IsNumeric(Me.LabelI.Text) Then
            MessageBox.Show("Entrez une valeur numérique pour I")
            Bon = False
        Else
            Select Case CType(Me.LabelI.Text, Double)
                Case Is < 0
                    MessageBox.Show("Entrez une valeur positive pour I")
                    Bon = False
            End Select
        End If
        Return Bon
    End Function
 
    Function CalculCaquot() As Double
        Dim C As Double = Convert.ToDouble(Me.LabelC.Text)
        Dim S2 As Double = Convert.ToDouble(Me.LabelS2.Text)
        Dim I As Double = Convert.ToDouble(Me.LabelI.Text)
        Dim a2 As Double = Convert.ToDouble(Me.Labela2.Text)
        Dim b2 As Double = Convert.ToDouble(Me.Labelb2.Text)
        Dim L As Double = Convert.ToDouble(Me.LabelL.Text)
        Dim LabelQmax As Double
 
        LabelQmax = ((((a2 / 396) * (0.28 * (L / 100) ^ 0.84 * (S2 / 10000) ^ -0.42) ^ -b2) ^ (1 / (1 - 0.287 * b2))) * (C ^ (1 / (1 - 0.287 * b2))) * ((I / 100) ^ ((0.41 * b2) / (1 - 0.287 * b2))) * ((S2 / 10000) ^ ((0.95 - 0.507 * b2) / (1 - 0.287 * b2)))) * 1000
        Return LabelQmax
    End Function
 
 
 
End Class



Merci