#edit #numeric #cobol
Вопрос:
У меня есть поле, такое как 03 ws-var1, рис. s9(11), v9(2) , знак, заканчивающийся отдельно.
В файле op значение отображается как 00000002999200
Но я хочу, чтобы он отображался как 29992,00. Какое определение должно быть дано в COBOL, чтобы я получил этот желаемый результат.
Комментарии:
1. Используйте определение PIC-Z(10)9.99 Переместите WS-VAR1 в поле отображения, затем выведите.
2. @GilbertLeBlanc Этот комментарий-абсолютно правильный ответ. Хотя вопрос может быть расширен, чтобы повысить его полезность, не могли бы вы перенести его в ответ с минимальным примечанием об отредактированных полях в целом?
Ответ №1:
изображение | Результат | Длина | Примечания |
---|---|---|---|
9(11).9(2) | 00000029992.00 | 15 | Знак или - будет показан |
-9(11).9(2) | 00000029992.00 | 15 | Значение - будет отображаться только в том случае, если значение отрицательное |
(11)9.9(2) | 29992.00 | 15 | Знак или - будет показан |
-(11)9.9(2) | 29992.00 | 15 | Значение - будет отображаться только в том случае, если значение отрицательное |
Z(10)9.9(2) | 29992.00 | 14 | Табличка снята. |
В каждом случае пробелы будут присутствовать перед каждым результатом, если количество отображаемых символов меньше длины поля.