Я хочу изменить значение первого элемента в моем векторе (который установлен в 1) в этом случае, добавив 1 к нему - но также и другую более сложную арифметику. вот код:Изменение значения векторного элемента
*************************************************************
IDENTIFICATION DIVISION.
PROGRAM-ID. YOUR-PROGRAM-NAME.
DATA DIVISION.
FILE SECTION.
WORKING-STORAGE SECTION.
01 TABLE1.
05 BERN PIC 9(1) OCCURS 10 TIMES VALUE 1.
PROCEDURE DIVISION.
MAIN-PROCEDURE.
COMPUTE BERN(1) = BERN(1)+1.
DISPLAY TABLE1.
STOP RUN.
END PROGRAM YOUR-PROGRAM-NAME.
Проблема заключается в том, что она не принимает
COMPUTE BERN(1) = BERN(1)+1.
Что такое правильный способ сделать это?
Зачем все дергать друг против друга? Он выглядит дрянным и менее легко меняющимся. 'COMPUTE BERN (1) = BERN (1) + 1'. Там. Это будет скомпилировано. Обратите внимание на предложение «ADD». Здесь гораздо более наглядно. Также посмотрите здесь комментарий о полных остановках/периодах в ОТНОШЕНИИ ПРОЦЕДУРЫ с COBOL после 1985 года. Обратите внимание также на комментарий о «работает ли VALUE 1?». Вы никогда не захотите услышать такие комментарии, когда кто-то должен посмотреть руководство, чтобы понять ваш код. Итак, упростите. –
Вы заметили проблему с таблицей по вопросу Бенеулли? –
yes @BillWoodger Я сделал, проблема была: переменная RES и переменные элемента вектора - они, где переполнение с «N» становилось все больше и больше ... Вы хотите, чтобы я восстановил этот вопрос? –