Можете ли вы принять два входа на одной линии COBOL? - PullRequest
0 голосов
/ 24 февраля 2019

Сложно объяснить, но у меня есть две колонки: одна - это заказанные товары, а другая - цена товара.под пользователем необходимо ввести имя компьютера и его цену.Проблема, с которой я столкнулся, заключается в том, что мне нужно вводить текст в той же строке, и я не знаю как, поскольку я новичок в COBOL.пример того, как он должен выглядеть:

ПУНКТЫ ЗАКАЗАНА ___________ Цена

Компьютер: Dell______________ 250,00

Я пытаюсь использовать

display "ITEMS ORDERED                       Price".
display "Computer: "with no advancing.
   accept DESCRIPTION-OF-LAPTOP with no advancing.
   accept LAPTOP-PRICE.

Это просто заканчиваетсяпо какой-то причине положить его в самый верх командной строки.

1 Ответ

0 голосов
/ 27 февраля 2019

С помощью стандартного оператора ACCEPT можно ввести два (или более) поля в одной строке;однако это принимается как один элемент данных, который затем должен быть проанализирован для разделения полей.Вкладки могут быть введены, чтобы выстроить данные в два столбца.

          ITEMS ORDERED            Price
Computer: Dell                    250.00
Computer: HP                      275.00
Computer:

В этих случаях я использовал три вкладки.Однако для отделения цены от имени требуется только один пробел.поэтому записи могут выглядеть следующим образом и все еще приниматься:

          ITEMS ORDERED            Price
Computer: Dell                    2.00
Computer: Dell                    20.00
Computer: Dell                    200.00
Computer: Dell                    2000.00
Computer: Dell    2.00
Computer: Dell 20.00
Computer: Dell            200.00
Computer:

Требуется дополнительный код для очистки, анализа и проверки перед сохранением данных.(Я использовал около 60 дополнительных строк кода для этой цели.)

При SCREEN SECTION точное расположение и определение каждого поля определены, поэтому столбцы выровнены, синтаксический анализ не требуется, а проверка упрощена.

SCREEN SECTION был добавлен к стандарту 2002 года как элемент , зависящий от процессора, и не обязательно доступен для каждого компилятора, который в других отношениях соответствует.Однако эта функция в некоторой форме доступна в компиляторах с 1980-х годов.

...