MULTIPLY |
Multiplie |
|---|---|
| Cobol | |
Syntaxe
|
MULTIPLY identifier1 BY identifier2 [ROUNDED] [; ON SIZE ERROR imperativestatement] |
|
MULTIPLY identifier1 BY identifier2 [ROUNDED] GIVING identifier3 [ROUNDED] [; ON SIZE ERROR imperativestatement] |
Paramètres
| Nom | Description |
|---|---|
| identifier1 | Ce paramètre permet d'indiquer le premier nom de l'identificateur à multiplier. |
| identifier2 | Ce paramètre permet d'indiquer le deuxième nom de l'identificateur à multiplier. Si le troisième nom d'identificateur n'est pas spécifié, identifier2 recevra également le résultat. |
| identifier3 | Ce paramètre permet d'indiquer le nom de l'identificateur allant recevoir le résultat. |
| imperativestatement | Ce paramètre permet d'indiquer l'instruction traitant les erreurs de tailles de nombre. |
| ROUNDED | Ce paramètre permet d'indiquer que le résultat doit être arrondit. |
Description
Cette instruction permet d'effectuer une multiplication d'items de données et d'entreposer le résultat.
Remarques
- L'instruction MULTIPLY est utilisée pour effectuer des multiplications entre des identificateurs numériques. Elle permet d'exécuter directement une opération mathématique sans devoir recourir à une affectation ou à une expression intermédiaire, ce qui simplifie les traitements arithmétiques dans un programme COBOL.
- Le format sans GIVING permet à l'un des opérandes (identifier2) de recevoir le résultat de la multiplication. Cela implique une modification en place de la valeur initiale, ce qui est utile dans les calculs intermédiaires ou les accumulations sans nécessiter de variable temporaire.
- Le mot clef GIVING permet de préciser une variable distincte pour recevoir le résultat. Cette forme est préférée lorsque l'on souhaite préserver les valeurs d'origine des identificateurs impliqués dans la multiplication, ce qui renforce la lisibilité et la sécurité du code.
- L'option ROUNDED permet d'arrondir le résultat en cas de dépassement de la précision définie. Cela est essentiel lorsqu'on manipule des valeurs avec des décimales, car COBOL applique une troncature par défaut sans cette clause, ce qui pourrait fausser les résultats.
- La clause ON SIZE ERROR est une mesure de protection importante. Elle permet de capturer les situations où le résultat de la multiplication dépasse la capacité de la variable cible, évitant ainsi des corruptions de données silencieuses ou des résultats erronés.
- Les paramètres identifier1, identifier2 et éventuellement identifier3 doivent tous être numériques et compatibles. COBOL ne réalise pas de conversions implicites poussées, donc des erreurs de compilation peuvent survenir si les types ou formats ne sont pas cohérents.
- La multiplication peut être intégrée dans des calculs plus complexes combinés avec d'autres instructions arithmétiques comme ADD, SUBTRACT ou COMPUTE. Cela permet de construire des chaînes de calculs puissantes tout en gardant la structure lisible.
- Bien que simple en apparence, l'instruction MULTIPLY requiert une attention particulière au choix des variables cibles. Un mauvais choix peut entraîner l'écrasement involontaire de données importantes, surtout si la variable de destination est utilisée ailleurs dans le programme.
Dernière mise à jour : Jeudi, le 28 juillet 2011