Основы программирования - ответы

Количество вопросов - 216

Какое утверждение об информации является корректным?

Какие утверждения справедливы для понятия "сигнатура метода"?

Какой набор свойств характеризует процедуру?

Рассмотрим вызов компонента x.f. Какие утверждения справедливы для этого вызова?

Укажите корректные утверждения, связывающие клиента класса и его поставщика?

Укажите корректные утверждения по отношению к ссылочным переменным?

Что определяет синтаксис программы?

Какие утверждения справедливы для обеспечения корректности составного оператора?

Укажите корректные высказывания:

Какие утверждения корректны о завершении программ?

Пусть определен метод Plus, задающий сложение целых. Пусть также определен знак операции +, как псевдоним (alias) метода Plus. Какая форма записи сложения целых является синтаксически некорректной:

Предложение: "При вызове метода x.f нет необходимости помещать пробелы перед или после точки, хотя они являются допустимыми" характеризует:

Какие утверждения в контексте данного курса об отношениях "клиент", "поставщик" являются корректными?

Какое высказывание является определением программного интерфейса программы или ее части – класса, метода?

Какие утверждения являются корректными для понятия "инвариант цикла"?

Какие утверждения об импликации p implies q являются корректными?

Пусть (e) and (v) = True, где e и v – два булевских выражения. Согласно принципу конъюнкции это означает, что:

Какое определение инварианта класса является корректным?

Какие утверждения являются некорректными?

Укажите подходы, применяемые при выделении подзадач в большой задаче:

Импликация p implies q в языке Eiffel по определению является полустрогой операцией. Какие утверждения являются справедливыми?

Какие утверждения являются корректными?

Какое высказывание является некорректным для функций?

Дано истинностное присваивание p = True; q = False; r = True. Какая из формул принимает значение True для этого присваивания?

Определим отношение "является подвидом". Вид А является подвидом вида В если экземпляры вида А являются частным случаем экземпляров вида В. Киты являются подвидом млекопитающих. Укажите высказывания, справедливые для отношения "является подвидом".

Одним из широко используемых типов данных (классов) в программировании и в этом курсе является список с курсором. Какие команды и запросы не используются при работе с таким списком в предлагаемой реализации?

Представьте, что вы создаете ПО для работы с документами – создания, модифицирования и доступа к ним. Предположите, что вы проектируете класс WORD (Слово), который описывает понятие "слово" и класс PARAGRAPH (Абзац), описывающий понятие абзаца. Для каждого из следующих возможных методов класса PARAGRAPH, установите, какой из них должен быть командой.

Что не входит в понятие контракта метода:

Укажите корректные высказывания?

Какие из утверждений о правилах стиля программирования являются корректными?

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

Какими желательными свойствами должна обладать программа для компьютера?

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

Компилятор – это:

Какие утверждения о компьютерной программе являются корректными?

Какие из следующих предложений характеризуют данные, а не информацию?

(Упражнение 3) Введем следующие определения:
  • Алфавитом S назовем упорядоченное конечное множество символов { s1, s2, …sN}, на котором задана операция < - предшествования, так что для любой пары символов si и sj либо si < sj, либо sj < si
  • Словом u в алфавите S назовем последовательность символов из алфавита – sk1sk2…skr. Число символов в слове r – назовем длиной слова
  • Слово длины 0, не содержащее символов, будем называть пустым словом, и обозначать его буквой e
  • Конкатенацией слова u длины r и слова v длины p назовем слово w длины r+p, полученное приписыванием слова v в конец слова u. Операцию конкатенации будем обозначать знаком +. (Пример: алфавит S = { к, о, р } u = рок; v = око ; w = u+v = рококо.) Конкатенация слова u с пустым словом не изменяет u (u+e = e+u = u)
  • Каждое слово u можно рассматривать как конкатенацию двух его частей: префикса p(u), задающего начальную часть слова, и хвоста t(u), задающего оставшуюся конечную часть слова (u = p(u)+t(u)). Разбиение слова на префикс и хвост произвольно, так что при некотором разбиении префикс или хвост может быть пустым словом
  • Общим префиксом двух слов u и v назовем слово p такое, что p = p(u) = p(v). (Пример: u = рок; v = рококо; Общий префикс p = ро; t(u) = к; t(v) = коко).
  • Общим максимальным префиксом двух слов u и v назовем их общий префикс максимальной длины. (Пример: u = рок; v = рококо; Общий максимальный префикс p = рок; t(u) = е; t(v) = око).
  • Определим теперь лексикографический порядок на словах алфавита S. Пусть p общий максимальный префикс слов u и v, t(u), t(v) – хвосты слов u и v. Слово u лексикографически предшествует слову v тогда и только тогда, когда либо t(u) пустое слово, либо первый символ слова t(u) предшествует в алфавите S первому символу слова t(v)
  • Дан текст на русском языке (Кожа да кости. Коса у косаря). Расставьте слова текста в лексикографическом порядке (Большие и малые буквы считать одним символом):

    (Антропоморфизм) Какое устройство компьютера является аналогом мозга человека?

    Какие утверждения о программной системе являются корректными?

    Какое высказывание является определением аргумента?

    Определим отношение "возможно является частью". А возможно является частью В означает, что А может быть, но не обязательно, составляющей частью B. Укажите высказывания, справедливые для отношения "возможно является частью".

    Представьте, что вы создаете ПО для работы с документами – создания, модифицирования и доступа к ним. Предположите, что вы проектируете класс WORD (Слово), который описывает понятие "слово" и класс PARAGRAPH (Абзац), описывающий понятие абзаца. Для каждого из следующих возможных методов класса PARAGRAPH, установите, какой из них должен быть командой.

    Какие утверждения о семантике вызова x.f являются корректными?

    Какие правила относятся к стилю программирования?

    Пусть определены классы Student и Tutor, моделирующие понятия "студент" и его "руководитель". У класса Student есть запрос без аргументов tutor, возвращающий объект класса Tutor. У класса Tutor есть запрос с целочисленным аргументом students(j), возвращающий объект класса Student – студента с номером j в группе, руководимой данным преподавателем. Пусть определены по два объекта каждого из этих классов: student_one, student_two, tutor_one, tutor_two. Какие вызовы синтаксически корректны и в качестве результата дают объект класса Student?

    Укажите корректные высказывания?

    Какие утверждения о понятии "дерево" являются корректными?

    Какое высказывание является определением грамматической категории языка программирования?

    Какие категории задают лексемы?

    Предложение: "При вызове метода целевой объект должен отделяться точкой от имени метода" характеризует:

    Предложение: "Если у метода есть аргументы, то они должны заключаться в круглые скобки" характеризует:

    Рассмотрим отношения между понятиями, используемыми в программировании. Какое отношение задано некорректно?

    Укажите корректные высказывания?

    Какие утверждения, связывающие класс и объект, являются корректными?

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

    Какое определение предусловия метода является корректным?

    Какое высказывание является некорректным по отношению к понятию "инвариант класса":

    Рассмотрим фрагмент карты концепций. Какое отношение в этом фрагменте задано некорректно?

    Укажите корректные высказывания?

    Пусть е – булевское выражение. Какая из формул выражает закон "исключающего третьего"?

    Дано истинностное присваивание p = False; q = False; r = True. Какая из формул принимает значение True для этого присваивания?

    Пусть e(p, q, r) – булевское выражение, зависящее от трех булевских переменных. Сколько различных истинностных присваиваний можно построить в этом случае?

    Пусть e – булевское выражение. Для операции эквивалентности справедливо e = e. Это означает, что эквивалентность обладает свойством:

    Рассмотрим импликацию p implies q, где булевское выражение p является посылкой, а q – заключением. Какое из утверждений является некорректным?

    В программировании булевские переменные и выражения могут принимать три значения – True, False, Undefined (неопределено). Пусть переменная p имеет значение True, а qUndefined. Какие из выражений будут иметь значение Undefined?

    Пусть заданы множества целых чисел: S1 = { 3, 5, 7, 11}, S2 = {2, 4, 8, 10}, S3 = { 3, 11, 5, 10}. Укажите формулы теории предикатов, принимающих истинные значения. Здесь Forall обозначает квантор всеобщности, а Exist – квантор существования

    В упражнении 5 приводится текст объявления: "Вход запрещен всем, кто не авторизован или не имеет сопровождающего". Этот текст содержит запрет, которого не добивался видимо автор объявления. В упражнении предлагается переписать объявления. Выполнив это упражнение, укажите, тексты каких объявлений являются корректными?

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

    В тексте класса LINE_BUILDING дано объявление fancy_line: LINE, задающее воображаемую линию метро. Предположим, что задано еще одно объявление - real_line: LINE. Какие утверждения справедливы для этих двух сущностей?

    Какие утверждения являются корректными для связанных понятий – вызова, сущности, объекта, ссылки, void ?

    Какие утверждения корректно определяют задание процедур создания:

    В классе POINT в предложении create заданы имена двух процедур создания – make_cartesian и make_polar, каждая из которых имеет два аргумента, позволяющие создать точку, задав декартовы или полярные ее координаты. Пусть объявлены три точки – point_A, point_B, point_C: POINT. Какие операторы, создающие точки, являются синтаксически корректными?

    Какие правила корректности создания объектов должны иметь место?

    Какие утверждения являются некорректными?

    Алгоритм является спецификацией процесса, действующей на множестве данных и удовлетворяющей ряду правил. Укажите, какое из приведенных правил не является правилом, справедливым для алгоритма:

    Алгоритмы и программы – тесно связанные понятия. Какие утверждения корректны для этих понятий и связи между ними?

    Какие утверждения корректны относительно варианта цикла?

    Какое высказывание не имеет место для программ с goto?

    Какое утверждение является неверным по отношению к механизму обработки исключительных ситуаций Retry - resque в языке Eiffel:

    Какое утверждение является некорректным?

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

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

    Какая не влияющая на выполнение часть объявления метода является обязательной согласно правилам стиля программирования?

    Укажите, что из метода отображается в контрактном облике?

    Какие утверждения являются корректными?

    Напомним, что под сущностью в языке Eiffel понимается имя с указанием типа, появляющееся в тексте программы и обозначающее значения периода выполнения программы. Какое утверждение некорректно по отношению к понятию "переменная" в программировании?

    Какие утверждения справедливы для семантики присваивания target := source в языке Eiffel?

    Какое утверждение несправедливо относительно доступа клиентов к атрибуту класса?

    Какое утверждение несправедливо для констант в языке Eiffel?

    Какой набор свойств характеризует функцию?

    Сколько присваиваний нужно выполнить для удаления элемента из связанного списка?

    Какие утверждения является некорректными?

    Какое высказывание является некорректным по отношению к понятию "предусловие"?:

    Какие утверждения об абстрактном синтаксическом дереве (АСД) являются корректными?

    Пусть заданы множества слов: S1 = { племя, око, кот, питон}, S2 = { мама, мак, мел, потоп, папа, компас}. Укажите формулы теории предикатов, принимающих истинные значения. Здесь Forall обозначает квантор всеобщности, Exist – квантор существования, s[i] это i-й символ слова s

    Какие компоненты необходимы для работы любого компьютера?

    Какие утверждения о вызове метода являются корректными?

    Предложение: "Операторы, разделенные символом ‘точка с запятой’, будут выполняться друг после друга" характеризует:

    Какое устройство нельзя использовать для ввода данных?

    Предположим, что определены классы Car и Owner_of_car, моделирующие понятия "машина" и "владелец машины". У класса Car определены методы set_owner, mark, color, owner (Команда, позволяющая задать владельца, и три запроса, определяющие марку, цвет и владельца машины). У класса Owner_of_car определен запрос name, возвращающий имя владельца машины. Будем полагать, что определены объекты этих классов – my_car и my_person. Какая программа в соответствии с уже заданными правилами позволяет задать для объекта my_car владельца машины и вывести на консоль свойства, характеризующие марку, цвет машины и имя владельца:

    Какие утверждения справедливы для синтаксиса и семантики последовательности – составного оператора в языке Eiffel?

    Оператор множественного выбора в языке Eiffel синтаксически имеет следующий вид:
    inspectchoice-выражениеwhen val_1 then составной оператор_1when val_2 then составной оператор_2…else составной операторend
    Какие условия выполняются для choice-выражения и when-значений?

    Какие утверждения об объекте являются корректными?

    Какие утверждения справедливы для понятия "сущность"?

    Какие утверждения являются корректными?

    Какие выражения являются корректными по отношению к понятию "псевдокод"?

    Какое из следующих предложений характеризует и данные и информацию?

    Сущность – это типизированное имя в тексте программы, обозначающее значения в период выполнения. Укажите, что не может быть сущностью:

    Программирование и математика близки. Но мир математики – это бесконечный, непрерывный мир. Мир программирования конечен и дискретен. Математика статична, программирование – динамично. Ощутите разницу на следующем примере. Рассмотрим определение чисел Фибоначчи: f_1=1, f_2=1, f_i=f_{i-1}+f_{i-2} i>2. Укажите утверждения, из которых будет исходить программист при написании программы вычисления чисел Фибоначчи:

    Метод класса может иметь аргументы. Аргументы, указанные при объявлении метода называются формальными. При вызове метода задаются фактические аргументы. Какие утверждения корректны относительно формальных и фактических аргументов и их соответствия?

    Какое утверждение не является справедливым для программного интерфейса?

    Предложение: "Каждый вызов метода применяет метод к определенному объекту – цели вызова" характеризует:

    Какое утверждение не является справедливым для метода класса?

    Рассмотрим отношения между понятиями, используемыми в программировании. Какое отношение задано некорректно?

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

    Представьте, что вы создаете ПО для работы с документами – создания, модифицирования и доступа к ним. Предположите, что вы проектируете класс WORD (Слово), который описывает понятие "слово" и класс PARAGRAPH (Абзац), описывающий понятие абзаца. Для каждого из следующих возможных методов класса PARAGRAPH, установите, какой из них должен быть командой с аргументом.

    Какими свойствами должен обладать инвариант цикла?

    Какие утверждения, связанные с вызовом компонента – x. f, являются корректными?

    Какое определение сборщика мусора является корректным?

    Какое устройство компьютера не является устройством коммуникации?

    Какие утверждения о компьютере являются корректными:

    (Упражнение 3) Введем следующие определения:
  • Алфавитом S назовем упорядоченное конечное множество символов { s1, s2, …sN}, на котором задана операция < - предшествования, так что для любой пары символов si и sj либо si < sj, либо sj < si
  • Словом u в алфавите S назовем последовательность символов из алфавита – sk1sk2…skr. Число символов в слове r – назовем длиной слова
  • Слово длины 0, не содержащее символов, будем называть пустым словом, и обозначать его буквой e
  • Конкатенацией слова u длины r и слова v длины p назовем слово w длины r+p, полученное приписыванием слова v в конец слова u. Операцию конкатенации будем обозначать знаком +. (Пример: алфавит S = { к, о, р } u = рок; v = око ; w = u+v = рококо.) Конкатенация слова u с пустым словом не изменяет u (u+e = e+u = u)
  • Каждое слово u можно рассматривать как конкатенацию двух его частей: префикса p(u), задающего начальную часть слова, и хвоста t(u), задающего оставшуюся конечную часть слова (u = p(u)+t(u)). Разбиение слова на префикс и хвост произвольно, так что при некотором разбиении префикс или хвост может быть пустым словом
  • Общим префиксом двух слов u и v назовем слово p такое, что p = p(u) = p(v). (Пример: u = рок; v = рококо; Общий префикс p = ро; t(u) = к; t(v) = коко).
  • Общим максимальным префиксом двух слов u и v назовем их общий префикс максимальной длины. (Пример: u = рок; v = рококо; Общий максимальный префикс p = рок; t(u) = е; t(v) = око).
  • Определим теперь лексикографический порядок на словах алфавита S. Пусть p общий максимальный префикс слов u и v, t(u), t(v) – хвосты слов u и v. Слово u лексикографически предшествует слову v тогда и только тогда, когда либо t(u) пустое слово, либо первый символ слова t(u) предшествует в алфавите S первому символу слова t(v)
  • Дан текст на русском языке (Девица краса. Красна коса до пояса). Расставьте слова текста в лексикографическом порядке (Большие и малые буквы считать одним символом):

    (Антропоморфизм) Какое устройство компьютера является аналогом зрения человека?

    Какое высказывание является определением команды?

    Какое из определений семантики вызова x.f является корректным?

    Укажите корректные высказывания?

    Какие утверждения о понятии "выражение" являются корректными?

    Какие утверждения о понятии "оператор" являются корректными?

    Укажите корректные высказывания?

    Кто или что в контексте данного курса может быть поставщиком для класса программной системы?

    При моделировании линии метро за начальную станцию принимается станция на южном конце линии, за конечную – станция на северном конце. Некоторая линия метро идет с запада на восток, так что начальная и конечная станция расположены на одной широте. Что следует сделать в этом случае, чтобы наша модель соответствовала реальному миру?

    Укажите корректные высказывания?

    Известно, что в огороде нет бузины, Вы – программист, а Петр программистом не является, а про дядьку в Киеве ничего не известно. Какое высказывание в соответствии с законами импликации является ложным?

    Какие утверждения являются корректными?

    В тексте класса LINE_BUILDING объявлен атрибут fancy_line класса LINE. Какие утверждения справедливы для fancy_line?

    Укажите высказывания корректные по отношению к понятию "процедура создания"?

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

    Укажите корректные высказывания?

    Укажите корректное определение квалифицированного вызова:

    Какие утверждения являются корректными?

    Какие утверждения об управляющих структурах являются корректными?

    Какое утверждение не является справедливым по отношению к понятию "исключительная ситуация":

    Какие утверждения справедливы для компонентов класса в языке Eiffel?

    Что означает и в каких целях выполняется "скрытие информации", применяемое при разработке программной системы?

    Какое высказывание является некорректным для процедур?

    Какие правила стиля рекомендуются для ссылочного программирования?

    Какие утверждения являются корректными?

    Определим отношение "имеет". А имеет В означает, что В некоторая возможная составляющая часть А (А содержит или знает о В). Укажите высказывания, справедливые для отношения "имеет".

    Какие булевские выражения являются тавтологиями:

    Какое определение постусловия метода является корректным?

    В программировании булевские переменные и выражения могут принимать три значения – True, False, Undefined (неопределено). Пусть переменная p имеет значение False, а qUndefined. Какие из выражений будут иметь значение Undefined?

    Отношение "имеет" имеет две различные интерпретации: "содержит" и "знает".Для каких высказываний лучше подходит интерпретация "знает", чем "содержит"?

    Какие составляющие у оператора цикла в языке Eiffel?

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

    Какие утверждения являются корректными по отношению к понятию "абстракция":

    Какие выражения не являются лексемами?

    При решении сложных задач эффективным приемом является сведение сложной задачи к нескольким более простым задачам. Пусть из состояния K требуется перейти в состояние, где выполняется цель G. Управляющая структура – это некоторая стратегия, сводящая решение задачи к решению более простых задач. Укажите, какие из стратегий относятся к классическим стратегиям, применяемым в программировании?

    Какие допустимые по синтаксису в языке Eiffel части условного оператора могут отсутствовать в конкретном условном операторе?

    Какие утверждения являются корректными?

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

    Какие утверждения об объектах являются корректными?

    Какие утверждения являются корректными по отношению к понятию "атрибут класса"?

    Какое утверждение о данных является некорректным?

    (Антропоморфизм) Какое устройство компьютера является аналогом слуха человека?

    Какое высказывание справедливо для понятия "запрос"?

    Какое утверждение о запросе является некорректным?

    Какие утверждения о классе являются корректными?

    Пусть для некоторой проблемной области создается программная система. Какие условия должны выполняться при проектировании классов программной системы:

    Укажите корректные высказывания?

    Пусть (e) or (v) = False, где e и v – два булевских выражения. Согласно принципу дизъюнкции это означает, что:

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

    Укажите корректные высказывания о завершении цикла?

    Каковы условия корректности условного оператора if c then a else b?

    Какой из принципов не справедлив для структурного программирования?

    Какие части объявления метода являются синтаксически обязательными?

    Чтобы некоторый метод M, объявленный в классе C, начал работать, он должен быть вызван. Укажите некорректное высказывание, связанное с вызовом метода:

    Какое утверждение является некорректным?

    Программирование и математика близки. Но мир математики – это бесконечный, непрерывный мир. Мир программирования конечен и дискретен. Математика статична, программирование – динамично. Ощутите разницу на следующем примере. Рассмотрим переменную вещественного типа x: REAL. Укажите, какие утверждения относительно этой переменной справедливы для программирования, но не справедливы для математики?

    Какой набор свойств характеризует атрибут?

    Что определяет семантика программы?

    В мире людей у каждого человека существует множество связей с другими людьми. У каждого человека есть отец и мать. У многих есть супруг и дети, есть друзья, коллеги, просто знакомые. Благодаря ссылкам можно аналогичным образом создавать различные связанные структуры объектов. Укажите корректные высказывания, характеризующие связанные структуры:

    В какой из последовательностей булевские операции расставлены в соответствии со своими приоритетами?

    Какие утверждения являются корректными?

    Переменная называется ссылочной, если ее значением является ссылка. Укажите высказывания, корректные для ссылочных переменных?

    Рассмотрим обобщение задачи о шляпах (упражнение 13). Пусть N – число людей в ряду, M – число цветов шляп ( в упражнении N = 100, M = 2). Какая формула, задающая число правильных ответов, верна для наилучшей стратегии в этой задаче (надеемся, что Вы нашли эту стратегию):

    Предложение: "Eiffel и Smalltalk являются объектно-ориентированными языками" характеризует:

    Пусть задано множества букв S1 = { а, о, к, м, п} и множество слов: S2 = {имя, мама, мак, потоп, папа, компас}. Укажите формулы теории предикатов, принимающих истинные значения. Здесь Forall обозначает квантор всеобщности, а Exist – квантор существования

    (Упражнение 5) Пусть v1 и v2 переменные типа INTEGER. Какая из приведенных программ не выполняет обмен значениями?

    Пусть определены классы Book, Page, Paragraph, моделирующие понятия "книга", "страница книги", "абзац". Пусть определен объект my_book, задающий некоторую книгу. Рассмотрим фрагмент кода на языке Eiffel:
    Console.show(my_book.pages(j).paragraphs(i).text)
    Является ли этот фрагмент синтаксически корректным, если да, то какова его возможная семантика?

    Какие утверждения о конкретном синтаксическом дереве (КСД) являются корректными?

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

    Какое высказывание является некорректным по отношению к понятию "постусловие"?

    Рассмотрим фрагмент карты концепций. Какое отношение в этом фрагменте задано некорректно?

    Какие утверждения о создании объектов являются корректными?

    Укажите корректное определение неквалифицированного вызова:

    Какой из возможных видов алгоритмов рассматривается в этом курсе?

    Какие утверждения справедливы для синтаксиса присваивания target := source в языке Eiffel?

    Клиент программной системы (части программы – класса, метода) это:

    Какие утверждения являются корректными для связанных понятий – вызова, сущности, объекта, ссылки, void?

    Введем следующие определения:
  • Алфавитом S назовем упорядоченное конечное множество символов { s1, s2, …sN}, на котором задана операция < - предшествования, так что для любой пары символов si и sj либо si < sj, либо sj < si
  • Словом u в алфавите S назовем последовательность символов из алфавита – sk1sk2…skr. Число символов в слове r – назовем длиной слова
  • Слово длины 0, не содержащее символов, будем называть пустым словом, и обозначать его буквой e
  • Конкатенацией слова u длины r и слова v длины p назовем слово w длины r+p, полученное приписыванием слова v в конец слова u. Операцию конкатенации будем обозначать знаком +. (Пример: алфавит S = { к, о, р } u = рок; v = око ; w = u+v = рококо.) Конкатенация слова u с пустым словом не изменяет u (u+e = e+u = u)
  • Каждое слово u можно рассматривать как конкатенацию двух его частей: префикса p(u), задающего начальную часть слова, и хвоста t(u), задающего оставшуюся конечную часть слова (u = p(u)+t(u)). Разбиение слова на префикс и хвост произвольно, так что при некотором разбиении префикс или хвост может быть пустым словом
  • Общим префиксом двух слов u и v назовем слово p такое, что p = p(u) = p(v). (Пример: u = рок; v = рококо; Общий префикс p = ро; t(u) = к; t(v) = коко).
  • Общим максимальным префиксом двух слов u и v назовем их общий префикс максимальной длины. (Пример: u = рок; v = рококо; Общий максимальный префикс p = рок; t(u) = е; t(v) = око).
  • Определим теперь лексикографический порядок на словах алфавита S. Пусть p общий максимальный префикс слов u и v, t(u), t(v) – хвосты слов u и v. Слово u лексикографически предшествует слову v тогда и только тогда, когда либо t(u) пустое слово, либо первый символ слова t(u) предшествует в алфавите S первому символу слова t(v)
  • Дан текст на русском языке (Карл у Клары украл кораллы. Клара у Карла украла кларнет). Какое максимальное количество слов этого текста имеют общий префикс (Большие и малые буквы считать одним символом):

    Какие утверждения являются корректными?

    Рассмотрим фрагмент карты концепций. Какое отношение в этом фрагменте задано некорректно?

    Когда каменщику нужно выложить стенку из кирпичей, то он, начиная с первого ряда, кладет ряд за рядом, пока стена не достигнет заданной высоты. Многие циклы, хотя и не все, следует этой стратегии, задавая аппроксимацию – последовательное приближение к достижению цели цикла. Построим цикл, моделирующий работу каменщика. Предположим, что высота одного ряда равна h, и каменщику нужно возвести стену высотой H = n * h. В качестве подходящего инварианта цикла выберем условие H = i * h (содержательно это означает, что выложена стена из i рядов кирпичей). Отметьте корректные составляющие цикла, позволяющие решить эту задачу и доказать ее корректность. Доказательство корректности предполагает доказательство трех утверждений: после инициализации инвариант цикла становится истинным, тело цикла сохраняет истинность инварианта, из истинности условия выхода и инварианта следует выполнение цели цикла

    Какое утверждение является некорректным по отношению к проектированию программы?

    Какие из следующих предложений характеризуют информацию, а не данные?

    Пусть e(p, q, r) – булевское выражение, зависящее от трех булевских переменных. Сколько строк содержит таблица истинности для этого выражения?

    Метод клиента, вызывающий метод М, возможно должен быть перекомпилирован, если в методе М изменения внесены только в:

    Каково назначение центрального процессора?

    Укажите корректные высказывания?

    Что из приведенных примеров задает грамматические категории языка Eiffel?

    Дано истинностное присваивание p = True; q = False; r = False. Какая из формул принимает значение True для этого присваивания?

    Базисное правило разработчика программы говорит:

    Какие части объявления метода задают контракт метода?

    Рассмотрим отношения между понятиями, используемыми в программировании. Какое отношение задано некорректно?

    Что не может компьютер?

    Result – это?