max permet de trouver le maximum d'une série de variables numériques, alphanumériques ou dates.
max( liste_exprg )
Elément | Description | Remarques |
liste_exprg | Liste d'expressions_généralisées séparées par le caractère ','. | Toutes les expressions doivent être du même type. |
# Maximum de plusieurs expressions numériques;
# ce programme affiche 8.66
MAXIMUM = max( pi, exp(1), log(24), sqr(2)*2, sin(0.58), 5*sqr(3))
MAXIMUM = ar2(MAXIMUM)
Infbox num$(MAXIMUM)
# Maximum de plusieurs chaînes
Char MOTS(40)(50) :# Définition de 50 chaînes de 40 caractères
Gosub LIRE_MOTS :# Remplissage de la variable MOTS
DERNIER_MOT = max(MOTS)
# Vérifier qu'aucune date n'est postérieure à FIN_PERIODE; les dates
# ont été saisies dans un tableau déroulant dont la variable de bas de
# tableau est VARBAS
If max([M]DATES(0..[M]VARBAS-1) >= FIN_PERIODE
Errbox "Date en dehors de l'intervalle !"
Endif
max permet de calculer le maximum d'un nombre quelconque de variables ou d'expressions globalement du même type (alphanumérique, date ou numérique).
Pour un maximum numérique, on peut mêler des expressions et des variables de type Integer, Shortint, Libelle, Decimal. Pour un maximum alphanumérique, la comparaison au sens des chaînes est utilisée.
Le type du résultat dépend du type des arguments, à savoir :
Si l'un des arguments de la fonction est une variable dimensionnée sans précision d'indice ou d'intervalle d'indices, tous les éléments de la variable sont utilisés. La précision d'un indice ou d'un intervalle d'indice détermine les éléments à prendre en compte.
Si on donne un intervalle d'indices tel qu'aucun élément n'est à considérer dans la liste, par exemple max(VARIABLE(1..0)), le résultat renvoyé est la plus petite valeur selon le type de la variable, soit respectivement la chaîne vide pour les chaînes, -2^15 pour les entiers courts, -2^31 pour les entiers longs, environ -10^80 pour les décimaux et les doubles, environ -10^38 pour les flottants, 0 pour les libellés, [0/0/0] pour les dates.