PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Nouveauté WINDEV, WEBDEV, WINDEV Mobile 25 !
  • Fonctionnement
  • Agrégations existantes
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget iOSApple WatchCatalystUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
<Tableau>.Agrège (Fonction)
En anglais : <Array>.Reduce
Exécute une opération d'agrégation sur chaque élément d'un tableau.
Exemple
TabValeur est un tableau d'entiers = [1,2,3,4,5]
LaSomme est un entier
LaSomme  = TabValeur.Agrège((Valeur, Somme) => { RENVOYER Valeur + Somme }, 0)
 
// note : cet exemple est didactique ; pour faire la somme des éléments d'un tableau,
// il est préférable d'utiliser la fonction Somme
Syntaxe
<Résultat> = <Tableau>.Agrège(<Opération à effectuer> [, <ValeurInitiale>])
<Résultat> : Type correspondant au résultat
Résultat de l'opération d'agrégation demandée.
<Tableau> : Tableau WLangage
Nom de la variable de type Tableau à manipuler. Ce tableau doit être un tableau à une dimension.
<Opération à effectuer> : Procédure WLangage
Nom de la procédure WLangage à exécuter. Cette procédure peut être :
  • une procédure globale ou locale,
  • une procédure interne.
Il est également possible d'utiliser directement une lambda.
<ValeurInitiale> : Paramètre optionnel, type correspondant à la valeur initiale
Valeur initiale à utiliser lors de la première exécution de la procédure <Opération à effectuer>.
Remarques

Fonctionnement

La procédure <Opération à effectuer> est appelée une première fois avec deux paramètres :
  • le premier élément du tableau,
  • la valeur initiale spécifiée avec le paramètre <Valeur initiale>.
La procédure est ensuite appelée pour tous les autres éléments du tableau avec deux paramètres :
  • l'élément du tableau,
  • la valeur renvoyée par l'appel précédent.
Exemple didactique
Considérons l'exemple suivant :
tabValeur est un tableau d'entiers = [1,2,3,4,5]
LaSomme est un entier
LaSomme = Agrège(tabValeur, (Valeur, LaSomme) => { RENVOYER Valeur + LaSomme }, 0)
Dans cet exemple, le code :
LaSomme = tabValeur.Agrège((Valeur, LaSomme) => { RENVOYER Valeur + LaSomme }, 0)
est équivalent au code suivant :
LaSomme = tabValeur.Agrège(Additionne, 0)
 
PROCÉDURE INTERNE Additionne(Valeur, Total)
RENVOYER Valeur + Total
FIN
Avec cette procédure interne, il est possible de découper le calcul de la façon suivante :
  • RésultatIntermédiaire1 = Additionne (t[1], ValeurInitiale) : dans l'exemple Additionne( 1, 0 ) -> 1
  • RésultatIntermédiaire2 = Additionne (t[2], RésultatIntermédiaire1) : dans l'exemple Additionne( 2, 1 ) -> 3
  • ...
Note : cet exemple est didactique ; pour faire la somme des éléments d'un tableau, il est préférable d'utiliser la fonction Somme.

Agrégations existantes

Les agrégations les plus courantes sont disponibles en WLangage :
Versions 17 et supérieures
Moyenne
Nouveauté 17
Moyenne
Moyenne
Calcule la moyenne de plusieurs éléments :
  • éléments d'un tableau,
  • valeurs numériques, ...
Versions 17 et supérieures
Somme
Nouveauté 17
Somme
Somme
Calcule la somme des éléments d'un tableau.
Classification Métier / UI : Code neutre
Composante : wd250vm.dll
Voir Aussi
Version minimum requise
  • Version 25
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire