У меня есть поле результата, указанное в качествеCompute: Предупреждать, когда младшее усечение происходит
01 MY-RESULT VALUE +0 USAGE COMP-3 PIC S9(13)V99
Представьте себе, я перемножить два фактора:
COMPUTE MY-RESULT = A * B
Что является лучшим способом для обнаружения усечения низкого порядка в MY-RESULT
? . когда A=B=2.01
.
Предложение ON SIZE ERROR
не запускается.
Это часть стандарта, чтобы сделать усечение низкого порядка. ROUNDED может немного изменить это значение (к стандарту 1985 года, пять или более в одной «дополнительной» десятичной позиции, приводит к добавлению к результату одной единицы наименьшей позиции, определенной в результате). Зачем вам нужно знать, мне никогда не нужно было знать. Вероятно, я бы сделал только умножение, если бы было известно, что это не приводит к усечению младшего порядка (либо умножится на нуль в десятичных разрядах, либо оба имеют нуль в десятичной позиции младшего разряда). –