Главная /
Основы программирования /
Пусть определены классы Book, Page, Paragraph, моделирующие понятия "книга", "страница книги", "абзац". Пусть определен объект my_book, задающий некоторую книгу. Рассмотрим фрагмент кода на языке Eiffel: Console.show(my_book.pages(j).paragraphs(i).text) Я
Пусть определены классы Book, Page, Paragraph
, моделирующие понятия "книга", "страница книги", "абзац". Пусть определен объект my_book
, задающий некоторую книгу. Рассмотрим фрагмент кода на языке Eiffel:
Console.show(my_book.pages(j).paragraphs(i).text)
Является ли этот фрагмент синтаксически корректным, если да, то какова его возможная семантика?
вопрос
Правильный ответ:
этот фрагмент синтаксически некорректен, поэтому ошибка возникнет еще на этапе компиляции
этот фрагмент синтаксически корректен, но ошибка возникнет на этапе выполнения, поскольку запросы не могут иметь аргументов
этот фрагмент синтаксически корректен, и будет выполняться. В результате на консоль будет выведен текст двух страниц книги с номерами
I
и j
этот фрагмент синтаксически корректен. Метод
show
, вызываемый предопределенным объектом Console
, выводит на консоль значение, переданное методу в качестве аргумента. Аргументом является некоторый текст, формируемый цепочкой запросов. Началом цепочки является заданный объект my_book
– объект класса Book
. У этого класса есть запрос pages
с целочисленным аргументом, задающим номер страницы. Запрос возвращает объект класса
Page
– страницу книги с указанным номером. У класса Page
есть запрос paragraphs
с целочисленным аргументом, задающим номер абзаца. Запрос возвращает объект класса Paragraph
– i-й абзац страницы. Запрос text
в классе Paragraph
возвращает текст абзаца. Таким образом на консоль будет выведен текст i-го абзаца j-й страницы книги, которую в момент выполнения обозначает объект my_book
Сложность вопроса
84
Сложность курса: Основы программирования
56
Оценить вопрос
Комментарии:
Аноним
Спасибо за сайт
11 июн 2018
Аноним
спасибо
10 ноя 2017
Другие ответы на вопросы из темы программирование интуит.
- # Какие утверждения об абстрактном синтаксическом дереве (АСД) являются корректными?
- # Укажите корректное определение квалифицированного вызова:
- # Какие составляющие у оператора цикла в языке Eiffel?
- # Оператор множественного выбора в языке Eiffel синтаксически имеет следующий вид: inspect choice-выражение when val_1 then составной оператор_1 when val_2 then составной оператор_2 … else составной оператор end Какие условия выполняются для choice-выражения и when-значений?
- # Напомним, что под сущностью в языке Eiffel понимается имя с указанием типа, появляющееся в тексте программы и обозначающее значения периода выполнения программы. Какое утверждение некорректно по отношению к понятию "переменная" в программировании?