50 лучших вопросов на собеседовании по COBOL & Ответы

Anonim

Скачать PDF

1) Что такое КОБОЛ?

COBOL сокращенно называется Common Business Oriented Language и является одним из старейших языков программирования. Он в основном используется для бизнес-систем, финансов и административных систем для компаний.

2) Какие типы данных существуют в COBOL?

В Cobol есть три типа данных:

  • Буквенно-цифровой (X)
  • Буквенный (A) и
  • Числовой (9)

3) В чем разница между индексом и индексом?

Нижний индекс относится к появлению массива, а индекс - это смещение от начала массива.

Индекс можно изменить только с помощью PERFORM, SEARCH & SET.

4) В чем разница между выполнением РАЗДЕЛА и ПАРАГРАФА?

В РАЗДЕЛЕ будут выполняться все параграфы, входящие в состав раздела.

PARAGRAPH будет содержать только этот абзац.

5) В чем разница между ПРОДОЛЖИТЬ И СЛЕДУЮЩЕЕ ПРЕДЛОЖЕНИЕ?

CONTINUE похож на пустой оператор, и он продолжает выполнение, в то время как NEXT SENTENCE передает управление следующему предложению.

6) Какие различные режимы ОТКРЫТИЯ доступны в Cobol?

Открытые режимы могут использоваться для

  • Вход
  • Выход
  • Ввод, вывод
  • Продлевать

7) Что такое статическое и динамическое связывание?

При статическом связывании, называемые подпрограммы, связываются с вызывающей программой, тогда как при динамическом связывании подпрограмма и основная программа будут существовать как отдельные модули. Динамическое и статическое связывание может быть достигнуто путем выбора опции редактирования ссылки DYNAM или NODYNAM.

8) Какая польза от оператора EVALUATE?

Evaluate похож на оператор case или может использоваться как Nested IF. Разница между EVALUATE и case заключается в том, что break не используется в операторе Evaluate, и управление выходит из EVALUATE после обнаружения совпадения.

9) В чем разница между ВЫПОЛНИТЬ… С ТЕСТОМ ПОСЛЕ и ВЫПОЛНИТЬ… С ТЕСТОМ ПЕРЕД?

Если указано TEST BEFORE, условие проверяется в начале каждого повторного выполнения указанного диапазона PERFORM.

Если указано TEST AFTER, условие проверяется в конце каждого повторного выполнения диапазона PERFORM. Диапазон выполняется хотя бы один раз в ТЕСТ ПОСЛЕ.

10) В чем смысл опции ЗАМЕНА в операторе копирования?

ЗАМЕНА позволяет использовать одну и ту же копию более одного раза в одном и том же коде путем изменения значения замены.

КОПИРОВАТЬ <Имя> ЗАМЕНА НА

11) Какая ошибка обнаруживается опцией ON SIZE ERROR?

Параметр ОШИБКА РАЗМЕРА появляется, когда есть

  • переполнение с фиксированной точкой
  • Ноль возведен в нулевую мощность
  • Деление на 0
  • Ноль возведен в отрицательное число
  • Отрицательное число в дробной степени.

12) В чем разница между структурированным программированием на COBOL и объектно-ориентированным программированием на COBOL?

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

Объектно-ориентированный язык Cobol - это естественный способ программирования, в котором вы идентифицируете объекты, а затем пишете функции и процедуры вокруг этого объекта.

13) Что такое МЕСТНОЕ ХРАНЕНИЕ?

Локальное хранилище выделяется каждый раз при вызове программы и освобождается, когда программа останавливается посредством ВЫХОДА ИЗ ПРОГРАММЫ, GOBACK или STOP RUN. Он определяется в ОТДЕЛЕНИИ ДАННЫХ после РАЗДЕЛА РАБОЧЕГО ХРАНИЛИЩА.

14) Что такое ПРОЦЕДУРА ВВОДА и ВЫВОД?

В ПРОЦЕДУРЕ ВВОДА входной файл открывается, записи читаются и редактируются, а затем передаются для операции сортировки. Наконец файл будет закрыт.

[plain] ВЫБРАТЬ имя записи ИЗ inputrecord [/ plain]

В ПРОЦЕДУРЕ ВЫВОДА выходной файл открывается, отсортированная запись возвращается в Выходную запись, а затем запись будет записана. Наконец файл будет закрыт.

[plain] ВОЗВРАТИТЬ ЗАПИСЬ файла в outputrecord [/ plain]

15) Какая польза от ОТДЕЛЕНИЯ СВЯЗИ?

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

16) Каковы режимы доступа оператора START?

Режимы доступа - ПОСЛЕДОВАТЕЛЬНЫЙ или ДИНАМИЧЕСКИЙ для оператора start.

17) Что такое поточная PERFORM?

Оператор IN-LINE PERFORM позволяет вложить выполняемую подпрограмму в сам оператор выполнения вместо того, чтобы быть отдельным абзацем.

Операторы PERFORM и END-PERFORM используются для блокировки операторов cobol между ними. В очереди PERFORM работают до тех пор, пока нет внутренних GO TO, даже до выхода.

18) Какие разделы и абзацы являются обязательными для программы COBOL?

Раздел идентификации и идентификатор программы являются обязательными для программы COBOL.

19) В чем разница между глобальными и внешними переменными?

Глобальные переменные доступны только для пакетной программы, тогда как на внешние переменные можно ссылаться из любой пакетной программы, находящейся в той же системной библиотеке.

20) Что означает Pic 9v99?

Рис 9v99 - это трехпозиционное числовое поле с подразумеваемой или предполагаемой десятичной точкой после первой позиции.

Здесь v означает подразумеваемую десятичную точку.

21) Каким руководящим принципам нужно следовать, чтобы написать структурированную программу на COBOL?

Следующие рекомендации следует соблюдать при написании программы Cobol:

  • Используйте оператор EVALUATE для построения наблюдений.
  • Используйте терминаторы области видимости для вложения.
  • Используйте встроенный оператор Perform для написания конструкций do.
  • Используйте Test Before и Test After в операторе Perform при написании операторов Do-While.

22) Как получить текущую дату из системы с веком?

Текущая дата с веком достигается с помощью внутренней функции FUNCTION CURRENT-DATE.

23) Каковы все подразделения программы COBOL?

В программе кобола четыре подразделения:

  • ИДЕНТИФИКАЦИОННЫЙ ОТДЕЛ
  • ОТДЕЛЕНИЕ ОКРУЖАЮЩЕЙ СРЕДЫ
  • ОТДЕЛЕНИЕ ДАННЫХ
  • ПРОЦЕДУРА ПОДРАЗДЕЛЕНИЯ

24) Что такое SSRANGE и NOSSRANGE?

Это параметры, позволяющие компилятору найти индекс вне допустимого диапазона. NOSSRANGE - это параметр по умолчанию, при котором не будет ошибок времени выполнения, если индекс или индекс выйдут за пределы диапазона.

25) Что такое КОМ-1? КОМП-2?

COMP-1 представляет собой число с плавающей запятой одинарной точности и использует четыре байта. COMP2 - это число с плавающей запятой двойной точности, использующее восемь байтов.

26) В чем разница между PIC 9.99 и PIC9v99?

PIC 9.99 - это четырехпозиционное поле, которое фактически содержит десятичную точку, тогда как PIC 9v99 - трехпозиционное числовое поле с предполагаемой десятичной позицией.

27) Какова цель указателя в строке?

Назначение указателя - указать крайнюю левую позицию в поле приема, где будет сохранен первый переданный символ.

28) Что такое бинарный поиск?

Во-первых, мы должны сравнить искомый предмет с предметом в центре.

Если оно совпадает, можно использовать значение, иначе повторить процесс с левой или правой половиной, в зависимости от того, где находится элемент.

29) В чем разница между двоичным поиском и последовательным поиском?

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

При последовательном поиске таблица просматривается сверху вниз, поэтому элементы не обязательно должны находиться в определенной последовательности.

Бинарный поиск выполняется намного быстрее для большего количества таблиц, в то время как последовательный поиск хорошо работает с меньшими таблицами. ПОИСК ВСЕ используется для двоичного поиска; ПОИСК для последовательного поиска.

30) Можно ли выполнить поиск по таблице с указателем или без него?

Нет, для поиска по таблице таблица должна быть проиндексирована.

31) Какие существуют правила для выполнения поиска?

ПОИСК можно применить к таблице

  • В котором есть предложение OCCURS
  • УКАЗАНО по фразе
  • Индекс поиска должен иметь какое-то начальное значение
  • Установите значение индекса на 1

32) Какое значение по умолчанию, ТЕСТ ПЕРЕД или ТЕСТ ПОСЛЕ для оператора PERFORM?

ТЕСТ ПЕРЕД оператором по умолчанию, и условие проверяется перед выполнением инструкций в разделе «Выполнить».

33) Каковы разные правила операции СОРТИРОВКИ?

СОРТИРОВКА может выполняться, когда

  • Файлы ввода и вывода должны оставаться закрытыми
  • Рабочий файл должен иметь предложение select
  • Файлы ввода и вывода имеют записи FD
  • Рабочий файл должен иметь краткое описание в разделе файлов.

34) В таблице определены два индекса. Какой из них будет использоваться ПОИСКОМ?

Индекс, названный первым, может использоваться при поиске.

35) Когда ограничитель области видимости является обязательным?

Ограничители области действия являются обязательными для встроенных операторов PERFORMS и EVALUATE. Сделайте терминатор области видимости как явный для хороших стандартов кодирования.

36) Почему необходимо, чтобы файл открывался в режиме ввода-вывода для ПЕРЕЗАПИСИ?

Перед выполнением ПЕРЕЗАПИСИ запись должна быть открыта и прочитана из файла. Следовательно, для перезаписи файл должен быть открыт в режиме ввода-вывода.

37) Как мы можем узнать, что этот модуль может быть вызван - ДИНАМИЧЕСКИ или СТАТИЧЕСКИ?

ЕДИНСТВЕННЫЙ способ - посмотреть на вывод редактора связей или загрузочного модуля.

Если модуль вызывается ДИНАМИЧЕСКИ, то он не будет существовать в основном модуле, если он вызывается СТАТИЧЕСКИ, то он будет существовать в загрузочном модуле.

38) Какой поисковый глагол эквивалентен ИСПОЛНИТЕЛЬНО… РАЗЛИЧНО?

Последовательный глагол SEARCH эквивалентен оператору Perform… Varying, и это не что иное, как поиск без ALL.

39) Сколько разделов в Data Division?

В Data Division шесть разделов:

  • Раздел файла
  • Рабочая секция хранения
  • Секция локального хранилища
  • Раздел экрана
  • Раздел отчета
  • Раздел связи

40) В чем разница между использованием comp и comp-3?

Comp предназначен для двоичного использования, а comp-3 указывает на упакованное десятичное число.

41) Что делает Exit?

Если используется EXIT, это не будет больше, чем просто предложение в абзаце.

42) Приведите примеры терминаторов команд?

End IF и End Evaluate являются примерами терминаторов команд.

43) В чем разница между вызовом и ссылкой?

Вызов - это настоящая команда COBOL, которая запускает внешнюю программу и возвращает ее. Ссылка такая же, как и Call, но не принадлежит глаголу COBOL.

44) Какой режим используется для работы с последовательным файлом?

Режим OI (режим вывода / ввода) используется для запуска и инициации обработки файлов. Обработка файлов определяется успешным выполнением оператора OPEN.

45) Сколько байтов занимает поле S (8) comp и его максимальное значение?

S (8) может хранить 4 байта, максимальное значение - 99999999.

46) Как можно определять массивы в COBOL?

Массивы можно определить как -

05 Array1 PIC X (9), который встречается 10 раз

05 Array2 PIC X (9), который встречается 20 раз

47) Что такое литералы?

Литерал - это элемент данных, который сам по себе состоит из значения. Его нельзя назвать по имени. Это постоянные элементы данных. Есть два типа литералов:

  • Строковые / буквенно-цифровые литералы
  • Числовые литералы

48) Что такое элемент отчета?

Элемент отчета - это поле для печати, в котором есть символы редактирования.

49) Можем ли мы переопределить поле X (200) на значение меньше 200?

Да, мы можем переопределить значения с большего числа на меньшее.

50) Какова длина Кобола?

Длина похожа на специальный регистр, который имеет длину группы или элементарного элемента.