La plus grande valeur

mloolm - 3 févr. 2015 à 18:21
CGSI3 Messages postés 416 Date d'inscription vendredi 22 février 2008 Statut Membre Dernière intervention 7 janvier 2018 - 12 mars 2015 à 22:53
Bonjour,

si on declare par exemple
Dim r1 As Integer = 10
Dim r2 As Integer = 72
Dim r3 As Integer = 58
ect....
comment récupérer la valeur la plus grande??????

4 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
3 févr. 2015 à 18:36
Bonjour,
es-tu vraiment certain de développer sous VB6 (le présent sous-forum) ?
Ce que tu montres semble être autre chose (du VB.Net ?)
0
IBM.MVP Messages postés 12 Date d'inscription vendredi 1 août 2014 Statut Membre Dernière intervention 12 mars 2015
12 mars 2015 à 06:15
bonjours.
moi j'ai reflechis comme suite :

if(r1 > r2) then
if(r1 >r3) then
msgbox("c'est r1 qui est le plus grand")
elseif(r1 = r3) then
msgbox("r1 et r3 sont équax et plus grands que r2")
else
msgbox("c'est r3 qui est le pus grand")
end if
elseif(1 < r2) then
if(r2 >r3) then
msgbox("c'est r2 qui est le plus grand")
elseif(r2 = r3) then
msgbox("r2 et r3 sont équax et plus grands que r2")
else
msgbox("c'est r3 qui est le pus grand")
end if
else
if(r1 > r3) then
msgbox("c'est r1 et r2 sont égaux et plus grand que r3")
elseif(r1 = r3) then
msgbox("r1 et r2 et r3 sont tous équax")
else
msgbox("c'est r3 qui est le pus grand")
end if
end if


essaye un peu si ça fonctionne.
0
neob Messages postés 10 Date d'inscription jeudi 6 mars 2014 Statut Membre Dernière intervention 15 octobre 2015
12 mars 2015 à 09:33
Hello,

Pourquoi ne pas utiliser un tableau de valeurs en lieu et place de variables uniques ? On voit déjà qu'avec 3 variables le code déposé par IBM.MVP est assez long, imaginons avec 10 variables...

Un exemple ici pour connaître la plus grande valeur d'un tableau d'Integer -> à transformer en Long si nécessaire :
http://www.freevbcode.com/ShowCode.asp?ID=8459
0
CGSI3 Messages postés 416 Date d'inscription vendredi 22 février 2008 Statut Membre Dernière intervention 7 janvier 2018 1
12 mars 2015 à 22:53
Bonjour a tous,

Il serait déjà judicieux de répondre à la question de UcFoutu :
VB6 ou Vb.Net ?


Je répond en présumant que c'est du Vb.net

Une solution simple :

Dim Tableau As New List(Of Integer)
Tableau.add(10)
Tableau.add(72)
Tableau.add(45)
....
msgbox( "Valeur la Plus Grande : " & Tableau.ToArray.Max.ToString )


Ensuite si l'on doit tenir compte que chaque entier est associé a un élément explicite, je ferais comme ceci

Dim myDict As New Dictionary(Of Integer, String)
myDict.Add(10, "R1")
myDict.Add(72, "R2")
myDict.Add(58, "R3")
Dim Maxi As Integer = myDict.Max(Function(x) x.Key)
MsgBox(myDict(Maxi) & " Avec " & Maxi & " Est la Plus Grande Valeur")



Si il faut aussi afficher les comparaisons entre les données , je ne vois la solution qu'en passant par la méthode Sort .. mais c'est déjà une réponse bien trop avancé étant donné que je ne suis même pas sur que vous utilisiez Vb.Net

Bonne soirée a tous.

--
0
Rejoignez-nous