Minimax d'une liste de nombres minimum maximum

Contenu du snippet

Cette fonction retourne le minimum ou le Maximum d'une liste d'éléments
Modification le 17 février 2004
J'ai ajouté 6 lignes de vérification pour être sûr que tous les éléments d'un tableau ne soit pas vide. Autrrement il y a un inconvénient de taille la variable VarTmp retourne du vide.

Source / Exemple :


Public Function MiniMax(choix As Variant, tdd(), debut, fin)
'Cette fonction retourne le minimum ou le Maximum d'une liste d'éléments

Dim boucle As Long, VarTmp As Variant, ODC As Integer, Terminus As Integer
'is
If Not IsNumeric(choix) Then
choix = UCase(choix)
If choix = "MAX" Or choix = ">" Then ODC = 1 Else ODC = -1
ElseIf IsNumeric(choix) Then
If choix = 0 Then ODC = 1 Else ODC = -1
End If
'Vérifie si le tableau posséde un élément vide de données
Terminus = fin
For boucle = debut To fin
If IsEmpty(tdd(boucle)) = True Then
Terminus = boucle - 1
Exit For

End If
Next

VarTmp = tdd(1)
' Parcours de l'ensemble des arguments
For boucle = 2 To Terminus
            ' Comparaison de l'élément courant avec le MiniMax
        If (VarTmp * ODC) < (tdd(boucle) * ODC) Then VarTmp = tdd(boucle)
    
Next boucle
' Retourne l'élément le plus grand ou le plus petit
MiniMax = VarTmp
End Function

Conclusion :


Cette fonction a été testée sans erreur

Vous pouvez mettre dans la variable choix soit un caractére alphanumérique soit un nombre, le caractére alphanumérique est le signe > ou < ou MAX ou MIN selon sa propre façon de travailler, j'ai donc penser à tous ceux qui sont comme moi un tantinet changeant dans leur méthode d'appel de procédure.

Salut !

Rectification il y avait un BUG et de taille toutes mes excuses. Bye
Rectification il y avait plusieurs BUGS re désolé !

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.