Главная / Программирование / Основы информатики и программирования

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

Правильные ответы выделены зелёным цветом.
Все ответы: В первой части курса происходит знакомство с языком программирования Java, и строится теоретическая база, необходимая для изложения последующего материала. Во второй части излагаются практические методы построения правильных программ небольшого объема. Третья часть посвящена введению в объектно-ориентированное программирование, основам реализации базовых структур данных и рассмотрению небольших программных проектов, являющихся прототипами реальных задач, которые позже будут рассматриваться в курсах по теории компиляции, вычислительной геометрии и компьютерной графики.
Смотрите также:
На первой стадии изучения языка Java полезно:
(1) сосредоточиться на том, что язык Java является объектно-ориентированным
(2) сосредоточиться на содержательных проблемах корректной реализации алгоритма
(3) сосредоточиться на том, что язык Java не является объектно-ориентированным
Объектно-ориентированное программирование помогает справиться:
(1) с нелинейно растущей сложностью программ при уменьшении их объема
(2) с нелинейно растущей сложностью программ при увеличении их объема
(3) с линейно растущей сложностью программ при увеличении их объема
(4) с линейно растущей сложностью программ при уменьшении их объема
Нахождение выпуклой оболочки последовательно поступающих точек плоскости и вычисление двух ее метрических характеристик относится к задачам:
(1) низкой степени сложности
(2) средней степени сложности
(3) высокой степени сложности
Компилятор - это:
(1) средство для автоматического перевода программ
(2) средство для автоматической интерпретации программ
(3) средство для автоматического написания программ
Один из способов моделирования геометрических объектов в трехмерном пространстве состоит в том, чтобы аппроксимировать реальный объект:
(1) гранями выпуклых плоских многоугольников
(2) набором выпуклых плоских многоугольников
(3) ребрами выпуклых плоских многоугольников
(4) полиэдром
Одним из самых значительных изменений за последние двадцать лет в информатике и программировании стало появление:
(1) общемировой сети Интернет
(2) операционной системы UNIX
(3) языка программирования Java
Ошибки в программах - это:
(1) bugs
(2) debugging
(3) overload
(4) errors
Множествам целых Z и действительных R чисел в большинстве языков программирования соответствуют:
(1) их процессорные аналоги
(2) их машинные аналоги
(3) их аппаратные аналоги
(4) их микропроцессорные аналоги
Способ организации обработки данных, при котором программа вызывает сама себя непосредственно, либо с помощью других программ называется:
(1) рекурсия
(2) декремент
(3) итерация
(4) инкремент
Предикаты нам нужны прежде всего для того, чтобы иметь возможность ясно и недвусмысленно формулировать:
(1) определенные утверждения о программах
(2) определенные утверждения о константах
(3) определенные утверждения о программных переменных
Все задачи на написание программ можно разделить на следующие группы:
(1) простейшие задачи
(2) задачи на "программирование в малом"
(3) большие проекты
(4) мегапроекты
Теоремой, на которой базируется схема проектирования цикла при помощи инварианта, является утверждение, которое:
(1) необходимо доказывать
(2) не существует
(3) принимается без доказательства
Подавляющее большинство функций на пространстве последовательностей:
(1) являются индуктивными
(2) таких функций не существует
(3) индуктивными не являются
Тексты, написанные для людей, как правило, обладают:
(1) известной степенью неопределенности
(2) известной степенью неформальности
(3) известной степенью определенности
(4) известной степенью простоты
Центральный элемент ООП - это:
(1) абстракция
(2) класс
(3) объект
Примерами выпуклых множеств являются:
(1) отрезок прямой
(2) прямоугольник на плоскости
(3) круг на плоскости
(4) куб
Воспользоваться следующей грамматикой Gs:e -> ee | ee + | ee * | ee / | a | b | ... | zдля описания языка правильных программ:
(1) для стекового калькулятора
(2) для декового калькулятора
(3) для индуктивного калькулятора
(4) для предикативного калькулятора
Стороны многоугольников набора выпуклых плоских многоугольников называются:
(1) ребрами моноэдра
(2) ребрами полиэдра
(3) ребрами кучи
(4) ребрами деки
Язык Java обладает следующими качествами:
(1) архитектурная независимость
(2) возможность интерпретации
(3) высокая производительность и легкость в изучении
(4) мультимедийность
Для того, чтобы изучить какую-либо теорию, необходимо:
(1) выучить универсальный язык
(2) выучить язык, на котором теория может быть изложена
(3) выучить любой язык
Как оперативная, так и внешняя память могут рассматриваться, как:
(1) достаточно длинные последовательности из нулей и единиц
(2) достаточно короткие последовательности из нулей и единиц
(3) достаточно длинные последовательности из нулей
(4) достаточно короткие последовательности из единиц
В математической модели рекурсии значение функции для всех значений аргумента, начиная с некоторого, определяется:
(1) через предыдущие значения
(2) через последующие значения
(3) через начальные значения
(4) через конечные значения
Часто полезно поручить проверку истинности предикатов в процессе выполнения программы:
(1) компьютеру
(2) человеку
(3) не поручать никому
Характеристическим свойством каких задач является их простая сводимость к совокупности таких задач на обработку информации, для решения которых достаточно применения итерации или рекурсии:
(1) задачи на "программирование в малом"
(2) мегапроекты
(3) большие проекты
(4) простейшие задачи
Какую функцию надо взять в качестве ограничивающей, чтобы правильность данной программы:public class Gcd { public static void main(String[] args) throws Exception { int x = Xterm.inputInt("x -> "); int y = Xterm.inputInt("y -> "); Xterm.print("gcd(" + x + "," + y + ") ="); while ( (x != 0) && (y != 0) ) { if (x >= y) x -= y; else y -= x; } Xterm.println(" " + (x+y)); } }легко могла быть доказана:
(1) h = y * y
(2) h = x * x
(3) h = x * y
(4) h = x * 1
Для доказательства факта, что заданная функция не является индуктивной, применяют:
(1) отрицание критерия индуктивности
(2) отрицание индуктивности
(3) отрицание критерия дидуктивности
(4) отрицание дидуктивности
Описание последовательности действий, достаточно определенное для того, чтобы ее можно было выполнить при помощи некоторого автоматического устройства называют:
(1) линейной последовательностью
(2) алгоритмом
(3) инструкциями
(4) планом
Свойство объектов, посредством которого экземпляры класса получают доступ к данным и методам классов-предков без их повторного определения называется:
(1) наследование
(2) полиморфизм
(3) абстрагирование
(4) инкапсуляция
Выпуклая оболочка любого выпуклого множества:
(1) совпадает с ним
(2) не совпадает с ним
(3) такой оболочки не существует
(4) такого множества не существует
Грамматика G1 хотя и задает язык правильных арифметических формул, не отражает:
(1) старшинства операций
(2) порядок операций
(3) номер операций
(4) код операций
При построении изображения полиэдра надо удалить части ребер:
(1) которые не видны
(2) которые видны
(3) с заднего плана
(4) с переднего плана
Концепция ООП базируется на таких понятиях как:
(1) код
(2) объекты
(3) классы
(4) функции
Функция, действующая из некоторого множества значений переменных программы в множество из двух значений {T, F} ( Да и Нет) - это:
(1) высказывание
(2) предложение
(3) предикат
(4) определение
Единицами измерения информации являются:
(1) гигабайт
(2) терабайт
(3) бит
(4) килобайт
(5) байт
(6) мегабайт
Рекурсия и итерация:
(1) взаимозаменяемы
(2) не взаимозаменяемы
(3) эквивалентны
(4) равны
Что позволяет реализовать проверку истинности предикатов в процессе выполнения программы в языке Java:
(1) механизм работы с исключениями
(2) механизм работы с ошибками
(3) оператор while
(4) оператор if
Объектно-ориентированное проектирование в значительной мере помогает справиться со сложностью задач типа больших проектов, позволяя свести их к решению:
(1) многих значительно более простых
(2) многих значительно более сложных
(3) логических задач
(4) интегралов
Любая корректная постановка задачи содержит:
(1) ее предусловие
(2) ее постусловие
(3) ее инкремент
(4) ее декремент
В качестве примера использования критерия индуктивности можно доказать, что функция f:Z*->Z количество максимальных элементов последовательности целых чисел:
(1) является индуктивной
(2) не является индуктивной
(3) не является дидуктивной
(4) является дидуктивной
При кодировании алгоритма, сам текст алгоритма называется:
(1) программой
(2) инструкциями
(3) директивами
(4) бинарными файлами
Конкретная реализация класса, обладающая характеристиками состояния, поведения и индивидуальности, синоним экземпляра называется:
(1) класс
(2) секция
(3) объект
(4) блок
Выпуклая оболочка окружности - это:
(1) шар
(2) круг
(3) конус
(4) цилиндр
Какой метасимвол в грамматике G2 обозначает терм:
(1) T
(2) M
(3) V
(4) F
Для представления вершин полиэдра можно использовать выведенный из класса R3Vector класс:
(1) Vertex
(2) Vector
(3) Edge
(4) Begin
Хорошая программа должна обладать следующими качествами:
(1) корректность
(2) эффективность
(3) удобство эксплуатации
(4) надежность
(5) понятность
(6) модифицируемость
Примерами конечных алфавитов могут являтся:
(1) английский алфавит
(2) алфавит русского языка
(3) множество цифр
(4) алфавит всех символов, имеющихся на клавиатуре компьютера
Байта достаточно для хранения:
(1) 128 различных значений
(2) 256 различных значений
(3) 512 различных значений
(4) 1024 различных значений
Язык Java предусматривает следующие операторы цикла:
(1) for
(2) while
(3) do-while-do
(4) do-while
Для того чтобы доказывать правильность программ необходимо прежде всего дать строгое определение понятию:
(1) программа
(2) алгоритм
(3) правильная программа
(4) код
Обычным способом программной реализации итерации является:
(1) функция
(2) цикл
(3) схема
(4) граф
Если предусловие Q имеет вид T, то в этом случае инвариант можно строить только исходя из:
(1) постусловия T
(2) постусловия N
(3) постусловия S
(4) постусловия R
Для функции f:{0,1}*->{T,F} все элементы цепочки равны нулю значение F является:
(1) специальным
(2) глобальным
(3) стационарным
(4) карантинным
По своему положению и используемым методам Наука программирование является:
(1) областью математики
(2) областью прикладной математики
(3) областью высшей математики
(4) областью экспериментальной математики
Конструктор - это:
(1) метод, имеющий имя, не совпадающее с именем класса
(2) метод, имеющий имя, совпадающее с именем класса
(3) метод, не имеющий имя
Формула Герона требует большого числа умножений и:
(1) четырех относительно медленно выполняемых операций извлечения квадратного корня
(2) трех относительно медленно выполняемых операций извлечения квадратного корня
(3) двух относительно медленно выполняемых операций извлечения квадратного корня
(4) пяти относительно медленно выполняемых операций извлечения квадратного корня
Хорошим средством для автоматизации работы над сложными программными проектами является утилита:
(1) make
(2) take
(3) gcc
(4) push
Какой класс выводит плоское изображение в отдельном фрейме:
(1) WatDrewar
(2) AwtDrewar
(3) WatDrawer
(4) AwtDrawer
Минимальная неделимая единица языка Java - это:
(1) лексема
(2) абзац
(3) блок
(4) секция
Предикат можно назвать константным, если в нем:
(1) содержится один идентификатор
(2) не содержится ни одного идентификатора
(3) содержится два идентификатора
(4) содержится три идентификатора
Наиболее распространенными кодировками русского текста являются:
(1) Windows-1251
(2) Windows-1250
(3) KOI7-R
(4) KOI8-R
Какой из операторов цикла языка Java является наиболее универсальным и используется в различных ситуациях:
(1) while
(2) for
(3) do-while
В данном случае:{Q} S {R} предикат Q называется:
(1) предусловием
(2) входным утверждением S
(3) постусловием
(4) выходным утверждением программы S
Выражение взаимосвязи между меняющимися в теле цикла объектами в виде неизменного условия - это основная идея:
(1) метода проектирования цикла при помощи инкремента
(2) метода проектирования цикла при помощи рекурсии
(3) метода проектирования цикла при помощи конкатенации
(4) метода проектирования цикла при помощи инварианта
Основным методом построения инварианта является:
(1) ослабление постусловия оператора цикла
(2) ослабление предусловия оператора цикла
(3) усиление постусловия оператора цикла
(4) усиление предусловия оператора цикла
Минимальные индуктивные расширения хороши тем, что:
(1) уменьшают количество дополнительной информации
(2) увеличивают количество дополнительной информации
(3) уменьшают количество обобщенной информации
(4) увеличивают количество обобщенной информации
Все определения алгоритма требуют хорошего знания:
(1) определенных областей физики
(2) определенных областей математики
(3) определенных областей схемотехники
(4) определенных областей философии
Одним из достоинств объектно-ориентированного подхода является возможность использования уже существующих типов для:
(1) порождения новых с автоматическим без наследованием уже имеющихся свойств
(2) порождения новых с автоматическим наследованием уже имеющихся свойств
(3) порождения новых с наследованием вручную уже имеющихся свойств
Модуль векторного произведения двух векторов равен:
(1) параллелограмму, натянутого на эти вектора
(2) площади цилиндра, натянутого на эти вектора
(3) площади параллелограмма, натянутого на эти вектора
(4) цилиндру, натянутого на эти вектора
Класс Compf, содержащий метод compile, можно сделать выведенным из класса:
(1) Void
(2) Dec
(3) Stack
(4) Id
Класс Graphics входит в пакет:
(1) AWT
(2) WAT
(3) GWAT
(4) TGW
Объект Xterm:
(1) определяет порт, обеспечивающий ввод чисел
(2) определяет терминал, обеспечивающий ввод чисел и вывод строк текста
(3) такого объекта не существует
Большинство предикатов в состоянии, в котором не определены некоторые из переменных, входящих в него:
(1) не имеют определенного значения
(2) имеют строго определенное значения
(3) имеют произвольное значение
(4) имеют глобальное значение
Для хранения переменной типа short в языке Java отводится:
(1) один байт
(2) два байта
(3) четыре байта
(4) восемь байт
Какой из операторов языка Java позволяет досрочно перейти к выполнению следующей итерации, проигнорировав часть операторов тела цикла, еще не выполненных в текущей итерации:
(1) continue
(2) break
(3) for
Следующая спецификация:{i=0}"i++;"{i=1}:
(1) является тавтологией
(2) ложна во всех состояниях
(3) истинна при j=1 и ложна в остальных состояниях
Ограничивающая функция позволяет:
(1) гарантировать построение цикла
(2) гарантировать прохождение цикла
(3) гарантировать завершение цикла
(4) гарантировать начало цикла
Сколько применяется реально методов построения инварианта:
(1) 1
(2) 2
(3) 3
(4) 4
Минимальное индуктивное расширение для любой функции f:X*->Y:
(1) не существует
(2) существует
(3) является пустым
Какое свойство алгоритма предусматривает то, что действия, которые необходимо произвести на каждом шаге, должны быть определены строго и недвусмысленно в каждом возможном случае:
(1) конечность
(2) определенность
(3) эффективность
(4) вход (ввод)
Динамический поиск метода никогда не используется в следующих ситуациях:
(1) для методов, объявленных с ключевым словом static
(2) для методов, объявленных с ключевым словом private
(3) для методов, объявленных с ключевым словом final
(4) для всех методов final-класса
Для того чтобы реализовать метод add и конструктор класса Polygon, необходимо аккуратно разобраться с тем, как именно вершины выпуклой оболочки хранятся:
(1) в деке
(2) в стеке
(3) в блоке
(4) в секции
Интерпретатор совмещает в себе следующие стадии:
(1) компиляцию
(2) выполнение
(3) отладку
(4) тестирование
Учет затенения частей ребер гранями полиэдра — может решаться с помощью класса:
(1) SimpleDrawer
(2) AwtDrawer
(3) FirstDrawer
(4) ShadowDrawer
В языке Java для вызова метода необходимо сначала указать объект, к которому применяется тот или иной метод, а затем:
(1) после точки записать имя объекта
(2) после точки записать имя метода
(3) до точки записать имя метода
(4) до точки записать имя объетка
Один из простейших способов доказать, что предикат является тавтологией, — это:
(1) вычислить его значения во всех возможных состояниях
(2) вычислить его значения в выборке состояний
(3) вычислить его значение в начальном состоянии
(4) вычислить его значения в конечном состоянии
В информатике часто применяются следующие системы счисления:
(1) двоичная
(2) восьмеричная
(3) шестнадцатеричная
Описание примерного поведения функции T(n)при больших значениях параметра n называется:
(1) симптотическими оценками этой функции
(2) логическими оценками этой функции
(3) асимптотическими оценками этой функции
(4) теоритическими оценками этой функции
Спецификация программы является единственным корректным способом:
(1) постановки задачи
(2) решения задачи
(3) кодирования задачи
(4) описания задачи
Данная функция:f:R->R,f(x)=sin x является T-инвариантной относительно преобразования:
(1) T:R->R,T(x)=x+2
(2) T:R->R,T(x)=x+2П
(3) T:R->R,T(x)=2П
(4) T:R->R,T(x)
При ослаблении предиката A^B^C до A^C имеет место:
(1) устранение конъюнктивного члена
(2) добавление дизъюнктивного члена
(3) импликация
(4) конкатенация
Необходимость первого условия критерия минимальности следует непосредственно из:
(1) определения минимальности
(2) определения достаточности
(3) определения существования
(4) определения максимальности
Алгоритм, вычисляющий 1000-е простое число может служить примером алгоритма:
(1) имеющего непустое множество входных данных
(2) имеющего пустое множество входных данных
(3) не имеющего множества входных данных
Основными контейнерами являются:
(1) queue
(2) deq
(3) set
(4) lists
(5) dynamic
Аплеты запускаются с помощью:
(1) браузера
(2) специализированной программы для просмотра аплетов appletviewer
(3) специализированной программы для просмотра аплетов applet
(4) аплеты не возможно запустить
В римской системе счисления число 3900 может быть представлено так:
(1) MMMCM
(2) DCXLIX
(3) LX
(4) MCCVII
Освещенные участки - это:
(1) просветы
(2) тени
(3) пятна
(4) маркеры
Типы данных в языке Java подразделяются на:
(1) сложные
(2) простые
(3) ссылочные
(4) не ссылочные
Идентификатор, непосредственно следующий в предикате за квантором называется:
(1) связанным идентификатором
(2) следующим идентификатором
(3) основным идентификатором
(4) замыкающим идентификатором
Отрицательные числа всегда имеют в своем двоичном представлении:
(1) единицу в самом старшем разряде
(2) единицу в знаковом разряде
(3) двойку в самом старшем разряде
(4) двойку в знаковом разряде
Язык Java позволяет работать с массивами элементов:
(1) различных типов
(2) только одного типа
(3) только двух типов
(4) не позволяет
Предикат, описывающий максимально широкое множество в пространстве состояний переменных программы S, на котором гарантируется получение постусловия R называется:
(1) слабейшее предусловие
(2) сильнейшее постусловие
(3) слабейшее постусловие
(4) сильнейшее предусловие
Индуктивные функции определены на последовательностях:
(1) X* элементов из некоторого алфавита X
(2) R* элементов из некоторого алфавита X
(3) T* элементов из некоторого алфавита X
(4) Y* элементов из некоторого алфавита X
В чем причина того, что метод добавления дизъюнктивного члена не применяется:
(1) он не содержит никаких рекомендаций по поводу того, как именно выбрать предикат A
(2) он не содержит никаких рекомендаций по поводу того, как именно выбрать предикат B
(3) он не содержит никаких рекомендаций по поводу того, как именно выбрать предикат C
(4) он не содержит никаких рекомендаций по поводу того, как именно выбрать предикат D
Для произвольной функции f на пространстве последовательностей существует единственный с точностью до изоморфизма:
(1) многопроходный алгоритм с минимальной емкостной сложностью
(2) многопроходный алгоритм с максимальной емкостной сложностью
(3) однопроходный алгоритм с максимальной емкостной сложностью
(4) однопроходный алгоритм с минимальной емкостной сложностью
Набор теорий, стандартов и методов, которые совместно представляют собой способ организации научного знания - это:
(1) направление
(2) течение
(3) парадигма
(4) ветвь
Дек - это симбиоз:
(1) стека
(2) блока
(3) секции
(4) очереди
Пакет java.applet является составной частью библиотеки:
(1) GWT
(2) WAT
(3) AWT
(4) WGTA
Римскому числу MCCVII соответствует следующее:
(1) 1358
(2) 3567
(3) 1207
(4) 457
Задача нахождения теней и просветов на конкретном ребре:
(1) многомерная
(2) одномерная
(3) двухмерная
(4) полимерная
Сколько методов с именем print имеется в классе Xterm:
(1) 1
(2) 2
(3) 3
(4) 4
Предикат с переменными любых типов, который может содержать кванторы и не иметь скобок, не являющимися необходимыми для его однозначного толкования называется:
(1) предикатом в расширенном смысле
(2) предикатом в сжатом смысле
(3) предикатом в простом смысле
(4) предикатом в сложном смысле
Для хранения переменной типа float в языке Java отводится:
(1) один байт
(2) два байта
(3) четыре байта
(4) восемь байт
В языке Java, для того чтобы завести массив, необходимо:
(1) определить его структуру
(2) объявить его
(3) зарезервировать память для его блоков
(4) зарезервировать память для его элементов
Какое свойство является дистрибутивностью конъюнкции преобразователя предикатов wp(S,R):
(1) wp(S,Q)^wp(S,R)=wp(S,Q^R)
(2) wp(S,F)=F
(3) wp(S)^wp(S,R)=wp(S,Q)
(4) wp(S,Q)^wp(R)=wp(S^Q^R)
При работе с индуктивными функциями последовательности X* элементов алфавита X цепочкой над последним является:
(1) произвольную последовательность символов T
(2) определенную последовательность символов w
(3) произвольную последовательность символов w
(4) определенную последовательность символов T
Для того чтобы при построении инварианта с помощью метода устранения конъюнктивного члена цикл завершился, величина a должна:
(1) увеличиваться
(2) уменьшаться
(3) не изменяться
Данная программа:public class First1{ public static void main(String[] args) throws Exception { int x0 = Xterm.inputInt("x0 ->"); int y1 = 0, y2 = 0; try { while (true) { int x = Xterm.inputInt("x -> "); y2 += 1; if ( (y1 == 0) && (x == x0) ) y1 = y2; } } catch (Exception e) { Xterm.println("\nn = " + y1); } } }определяющую номер f первого элемента, равного Xo, в последовательности:
(1) строк
(2) вещественных чисел
(3) целых чисел
Примерами языков, предназначенных для директивного программирования являются:
(1) C
(2) C++
(3) Pascal
(4) Java
Если все элементы контейнера хранятся в векторе непрерывным куском и порядок элементов в имитируемой структуре соответствует порядку элементов в векторе, то такая реализация на базе вектора называется:
(1) прерывной
(2) непрерывной
(3) такая реализация невозможна
(4) простой
Какой из простейших графических примитивов позволяет изобразить заполненный овал:
(1) drawOval
(2) fillOval
(3) fillRect
(4) drawRect
Римская система счисления является примером следующей системы счисления:
(1) позиционной
(2) непозиционной
(3) порядковой
(4) непорядковой
У полубесконечной призмы основанием является:
(1) грань полиэдра
(2) ребро полиэдра
(3) нет основания
Какой метод класса Xterm позволяет осуществить ввод строки символьной информации, размещая ее в массиве символов:
(1) inputInt
(2) inputLong
(3) inputChars
(4) inputDouble
Операторы с каким приоритетом в языке Java выполняются в первую очередь:
(1) 9
(2) 7
(3) 5
(4) 3
(5) 2
(6) 1
Использование чисел с плавающей точкой является наиболее распространенным способом реализации:
(1) натуральных чисел
(2) комплексных чисел
(3) вещественных чисел
Элементы любого массива нумеруются:
(1) с нуля
(2) с единицы
(3) с десяти
(4) со ста
В данном случае:wp("System.exit(0);",R)=F при каком начальном состоянии после его выполнения предикат R будет истинным:
(1) эквивалентным единице
(2) эквивалентным нулю
(3) равным нулю
(4) ни при каком начальном состоянии
Длинной цепочки называется:
(1) количество входящих в нее символов
(2) количество входящих в нее алфавитов
(3) количество входящих в нее последовательностей
Данную программу:public class Sqrt { public static void main(String[] args) throws Exception { int n = Xterm.inputInt("n -> "); int a = 0; while ( n >= (a+1)*(a+1) ) a += 1; Xterm.println("sqrt(" + n + ") = " + a); } }можно переписать в следующем компактном виде:
(1) int a, n = Xterm.inputInt("n -> "); Xterm.println("sqrt(" + n + ") = " + a);
(2) Xterm.inputInt("n -> "); for (a=0; n >= (a+1)*(a+1); a++ a--); Xterm.println("sqrt("" + n + """) = " + a);
(3) int a, n = Xterm.inputInt("n -> "); for (a=0; n >= (a+1)*(a+1); a++); Xterm.println("sqrt(" + n + ") = " + a);
(4) int a, n = Xterm.inputInt("n -> "); for (a=0; n >= (a+1)*(a+1); a++);
Данная программа:public class AverSeq{ public static void main(String[] args) { double y1 = 0., y2 = 0.; try { while (true) { double x = Xterm.inputDouble("x -> "); y1 = (y1*y2 + x) / (y2 + 1.); y2 += 1; } } catch(Exception e) { Xterm.println("\nf = " + y1); } } }вводит последовательность вещественных чисел, и печатает:
(1) количество ее элементов
(2) максимальное количество ее элементов
(3) среднее арифметическое ее элементов
(4) минимальное количество ее элементов
Какие языки реализуют объектно-ориентированный подход:
(1) C++
(2) Pascal
(3) Java
(4) C
Если все элементы контейнера хранятся в одном векторе, а другой вектор — вектор ссылок, определяет реально содержащиеся в имитируемой структуре элементы и их порядок, то такая реализация на базе вектора называется:
(1) непрерывной
(2) прерывной
(3) ссылочной
(4) простой
Графический примитив drawRect позволяет:
(1) изобразить границу прямоугольника
(2) изобразить отрезок прямой линии
(3) изобразить заполненный овал
(4) установить цвет, которым будут изображаться выводимые объекты
При записи чисел в римской системе счисления значением числа является:
(1) геометрическая сумма цифр, в него входящих
(2) алгебраическая сумма цифр, в него входящих
(3) произвольная сумма цифр, в него входящих
(4) записать число в римской системы счисления невозможно
Для реализации метода hCross нахождения пересечения с горизонтальным полупространством нужно найти нормаль к грани и вызвать метод:
(1) topWith
(2) crossWith
(3) underWith
(4) nCross
Управляющими конструкциями языка Java являются:
(1) условные операторы
(2) операторы циклов
(3) операторы обработки исключений
(4) арифмитические операторы
Оператор ++ языка Java имеет следующий тип операции:
(1) целый
(2) логический
(3) числовой
(4) строковый
К арифметическим операторам языка Java, которые определены для всех числовых типов, относятся:
(1) сложение и унарный плюс
(2) вычитание и унарный минус
(3) сложение с присваиванием
(4) умножение
(5) вычитание с присваиванием
(6) умножение с присваиванием
(7) остаток от деления с присваиванием
(8) деление с присваиванием
Данная программа:public class NumMaxArr { public static void main(String[] args) throws Exception { int n, i, a[]; n = Xterm.inputInt("Введите длину массива n -> "); a = new int[n]; int max = Integer.MIN_VALUE; int nMax = 0; for (i=0; i<n; i++) { a[i] = Xterm.inputInt("Введите a[" + i + "] -> "); if (a[i] < max) { max = a[i]; nMax = 1; } else if (a[i] == max) nMax += 1; } Xterm.println("Количество макс. элементов = " + nMax); } }печатает количество максимальных элементов непустого массива:
(1) в которой используется четыре цикла
(2) в которой используется три цикла
(3) в которой используется два цикла
(4) в которой используется только один цикл
Управляющая конструкция if эквивалентна использованию пустого оператора:
(1) в else-ветви
(2) в while-ветви>
(3) в for-ветви
Схема вычисления индуктивной функции напоминает:
(1) метод доказательства по дедукции
(2) метод доказательства по индукции
(3) метод доказательства по абдукции
Программу, находящая сумму s элементов заданного целочисленного массива b[0..n-1], элементы которого и величину n изменять нельзя будет иметь вид:
(1) "i=0;s=0;while(i<n)S;++S;"
(2) "i=0;s=0;whileS;"
(3) "i=0;s=0;while(i<n)S;"
(4) "i=0;s=0;while(i<n)"
При написании программы, определяющей количество вхождений образца abcd в последовательность символов, для доказательства сюръективности функции F необходимо:
(1) предъявить прообраз конечного элемента
(2) предъявить прообраз произвольного элемента
(3) предъявить прообраз определенного элемента
(4) предъявить прообраз начального элемента
Функциональное и логическое программирование использует языки типа:
(1) Lisp
(2) Haskell
(3) Prolog
(4) Pascal
Синонимом терминов класс-предок, базовый класс является:
(1) superclass
(2) underclass
(3) topclass
(4) bitclass
В окне какого размера данный аплет:import java.awt.*; import java.applet.*; public class Primitives extends Applet { public void paint (Graphics g) { g.fillRect(20, 20, 40, 60); g.setColor(Color.red); g.drawLine(2, 2, 80, 80); g.drawOval(120, 120, 30, 40); g.drawRect(170, 170, 10, 15); g.setColor(Color.blue); g.fillOval(20, 150, 30, 30); } }изображает заполненный черный и синий прямоугольники, заполненный синий круг, красный отрезок, прямоугольник и овал:
(1) 200х200
(2) 400x400
(3) 600x600
(4) 800x800
Данная программа:public class RecursCompfTest { public static void main(String[] args) throws Exception { RecursCompf c = new RecursCompf(); while (true) c.compile(Xterm.inputChars("Введите формулу -> ")); } }является:
(1) рекурсивным компилятором формул
(2) тестом для рекурсивного компилятора формул
(3) Makefile для рекурсивного компилятора формул
(4) стековым компилятором формул
Задание на построение цели doc сводится к вызову утилиты:
(1) gcc
(2) jvdoc
(3) javadoc
(4) make
В общей форме оператор if-else записывается следующим образом:
(1) if (логическое_выражение) блок1; else блок2 ...
(2) if (логическое_выражение) блок1; [ else ... ]
(3) if (логическое_выражение) блок1; [ else блок2; ]
(4) if (логическое_выражение) блок1; else блок2;
Оператор == языка Java имеет следующий приоритет:
(1) 2
(2) 4
(3) 6
(4) 8
К побитовым операторам языка Java относятся следующие:
(1) дополнение
(2) сдвиг вправо с размножением нуля
(3) сдвиг вправо
(4) сдвиг вправо с присваиванием
Конструкция try-catch, предназначенна для:
(1) обработки ошибочных ситуаций
(2) обработки исключительных ситуаций
(3) обработки служебных ситуаций
(4) обработки логических ситуаций
Для практических приложений часто необходимо не вычисление слабейшего предусловия, а лишь проверка того факта, что некоторое другое известное предусловие:
(1) не обеспечивает его выполнение
(2) обеспечивает его выполнение
(3) существует
(4) не существует
Эффективный метод вычисления значения многочлена в точке носит имя:
(1) схемы Горнера
(2) схемы Ньютона
(3) схемы Лейбница
(4) схемы Фурье
Какой метод в значительной мере подобен методу расширения области значения переменной:
(1) добавление дизъюнктивного члена
(2) замена константы переменной
(3) устранение конъюнктивного члена
(4) замена константой переменной
В данной программе:import java.io.*; public class ABCDSeq { public static void main(String[] args) { DataInputStream in = new DataInputStream(System.in); int f = 0, n = 0; try { while (true) { char x = (char)in.readByte(); if (x=='\n') continue; if (x=='d' && n==3) { f += 1; n = 0; } else if (x=='c' && n==2) { n = 3; } else if (x=='b' && n==1) { n = 2; } else if (x=='a') { n = 1; } else{ n = 0; } } } catch(Exception e) { Xterm.println("f = " + f); } } }символ '\n' оказывается введенным после того, как пользователь нажимает клавишу:
(1) "Enter"
(2) "Backspace"
(3) "Shift"
(4) "Alt"
Написание самой простейшей программы на языке Java невозможно:
(1) без понимания основных концепций ООП
(2) без понимания основных концепций Web-технологий
(3) без понимания основных концепций функционального программирования
(4) без понимания основных концепций структурного программирования
Для того чтобы стать профессионалом в программировании, необходимы:
(1) талант
(2) способность к творчеству
(3) знания
(4) интеллект
(5) логика
(6) умение строить абстракции
(7) умение использовать абстракции
(8) опыт
В качестве основы для создания простейшего графического интерфейса используются:
(1) скрипты
(2) специальные среды
(3) графические блоки
(4) аплеты
Некоторый объект, использующий стек:
(1) стековый калькулятор
(2) калькулятор
(3) дековый калькулятор
(4) инженерный калькулятор
Набором выпуклых плоских многоугольников - это:
(1) моноэдр
(2) полиэдр
(3) куча
(4) дека
Важнейшими свойствами языка Java являются следующие:
(1) Java является современным объектно-ориентированным языком
(2) Java предоставляет программисту богатый набор классов различных объектов
(3) Java позволяет создавать аплеты
Debugging дословно означает:
(1) "выведение насекомых"
(2) "выведение клопов"
(3) "выведение ошибок"
(4) "выведение кода"
В языке Java используемые в программах переменные величины и константы типов int и double принимают значения из множеств:
(1) Zm
(2) Dm
(3) Nm
(4) Rm
Способ организации обработки данных, при котором определенные действия повторяются многократно, не приводя при этом к рекурсивным вызовам программ называется:
(1) инкремент
(2) рекурсия
(3) итерация
(4) декремент
В текст программы зачастую полезно включать предикаты, которые позволяли бы человеку или компьютеру проверять:
(1) синтаксис кода программы
(2) семантику кода программы
(3) корректность останова программы
(4) корректность хода выполнения программы
К простейшим задачам на написание программ можно отнести:
(1) линейные программы
(2) программы с ветвлениями, которые не используют ни циклов, ни рекурсивных вызовов
(3) функции
(4) предикаты
Истинность утверждения на котором базируется схема проектирования цикла при помощи инварианта может быть выведена из:
(1) свойств преобразователя предикатов wp
(2) определения оператора конкатенации
(3) определения оператора сцепления
(4) определения оператора цикла
Доказательство индуктивности функции обычно проводят:
(1) конструктивно, предъявляя требуемую функцию G
(2) не конструктивно, предъявляя требуемую функцию G
(3) конструктивно, предъявляя требуемую функцию T
(4) не конструктивно, предъявляя требуемую функцию T
Описания последовательности действий, предназначенные для автоматического устройства:
(1) не должны быть совершенно однозначны
(2) должны быть совершенно однозначны
(3) должны быть заданы с помощью некоторой неформальной системы обозначений
(4) должны быть заданы с помощью некоторой формальной системы обозначений
Метод решения задачи, при котором объекты разного рода объединяются общим понятием (концепцией), а затем сгруппированные сущности рассматриваются как элементы единой категории называется:
(1) абстрагирование
(2) инкапсуляция
(3) наследование
(4) полиморфизм
Примерами выпуклых множеств являются:
(1) шар в пространстве
(2) пирамида в пространстве
(3) прямоугольник в пространстве
(4) круг в пространстве
Какой язык можно рассматривать как язык правильных программ для стекового калькулятора:
(1) L(G)
(2) L(Gs)
(3) G(L)
(4) Gl
Примерами полиэдров могут служить:
(1) поверхность куба
(2) поверхность призмы
(3) листы полураскрытой веером книги
(4) поверхность пирамиды
Написание простейших программ на языке Java требует знания:
(1) основных принципов логического программирования
(2) основных принципов ООП
(3) основных принципов функционального программирования
(4) основных принципов директивного программирования
Язык, на котором можно строго сформулировать постановку задачи и доказать правильность конкретной программы - это:
(1) язык пределов
(2) язык предикатов
(3) язык функций
(4) язык интегралов
Под внешней памятью подразумеваются такие носители информации, как:
(1) магнитные диски
(2) ленты
(3) жесткий диск
(4) оптические диски
Факториал n! целого неотрицательного числа n задается следующими соотношениями:
(1) 0!=1, n!=n*(n-1)! для n>0
(2) 0!-1, n!=n*(n-1)! для n>0
(3) 0=1!, n!=n*(n-1)! для n>0
(4) 0-1!, n=n*(n-1)! для n>0
Проверка истинности предикатов в процессе выполнения программы в различных языках программирования реализована:
(1) одинаково
(2) по-разному
(3) не реализована
К какому классу относятся почти все практические задачи:
(1) простейшие задачи
(2) большие проекты
(3) мегапроекты
В данном случае:public class Gcd { public static void main(String[] args) throws Exception { int x = Xterm.inputInt("x -> "); int y = Xterm.inputInt("y -> "); Xterm.print("gcd(" + x + "," + y + ") ="); while ( (x != 0) && (y != 0) ) { if (x >= y) x -= y; else y -= x; } Xterm.println(" " + (x+y)); } }сохранение инварианта после выполнения тела цикла следует из:
(1) T-инвариантности gcd(x,y)
(2) T-инвариантности gcd(x,0)
(3) T-инвариантности gcd(y,y)
(4) T-инвариантности gcd(x,x)
Теорема критерия индуктивности утверждает, что f индуктивна тогда и только тогда, когда из равенства значений f на последовательностях a и b следует равенство значений f:
(1) на любых удлиненных последовательностях a o x и b o x
(2) на некоторых удлиненных последовательностях a o x и b o x
(3) на любых одинаково удлиненных последовательностях a o x и b o x
(4) на некоторых последовательностях a o x и b o x
Алгоритм обычно записывают:
(1) с помощью некоторых формальных обозначений
(2) с помощью некоторых неформальных обозначений
(3) с помощью некоторых последовательных обозначений
(4) с помощью некоторых непоследовательных обозначений
Cвойство, позволяющее использовать один и тот же интерфейс для различных действий; полиморфной переменной, например, может соответствовать несколько различных методов называется:
(1) инкапсуляция
(2) абстрагировани
(3) наследование
(4) полиморфизм
Для произвольного множества выпуклая оболочка может быть получена как:
(1) объединение всех выпуклых множеств, его содержащих
(2) пересечение всех выпуклых множеств, его содержащих
(3) разность всех выпуклых множеств, его содержащих
(4) не может быть получена
Множество нетерминалов для грамматики G2 будет состоять из следующих метасимволов:
(1) F
(2) T
(3) M
(4) V
Часто при задании полиэдра всю информацию о нем разделяют на следующие части:
(1) абстрактный полиэдр
(2) реальный полиэдр
(3) числовая
(4) метрическая
В программировании объектами могут быть:
(1) символы
(2) числа
(3) объекты, придуманные и реализованные автором программы
(4) строки
Из скольки бит состоит один байт?
(1) 8
(2) 16
(3) 32
(4) 64
Наилучшие рекурсивный и итерационный алгоритм имеют:
(1) совпадающую с точностью до некоторого множителя постоянную сложность
(2) совпадающую с точностью до постоянного множителя постоянную сложность
(3) совпадающую с точностью до некоторого множителя временную сложность
(4) совпадающую с точностью до постоянного множителя временную сложность
Данная программа:public class Assert { public static void main(String[] args) throws Exception { int n = Xterm.inputInt("Введите n -> "); if (n <= 0) throw new Exception("n <= 0"); Xterm.println("n = " + n); } }содержит:
(1) проверку истинности утверждения о положительности введенного с клавиатуры целого числа
(2) проверку истинности утверждения об отрицательности введенного с клавиатуры вещественного числа
(3) проверку утверждения о положительности введенного с клавиатуры не целого числа
Ренализация задач на "программирование в малом" не превосходит:
(1) 10-20 строк текста
(2) 30-40 строк текста
(3) 50-60 строк текста
(4) 70-80 строк текста
Предусловие и постусловие, которые содержатся в постановке задачи должны послужить основой для построения:
(1) инкремента
(2) инварианта
(3) декремента
(4) конкатенации
Схема вычисления индуктивной функции может быть несколько упрощена при условии наличия у функции:
(1) карантинных значений
(2) специальных значений
(3) глобальных значений
(4) стационарных значений
Процесс создания алгоритма называется:
(1) шифрованием
(2) кодированием
(3) программированием
(4) инструктированием
Какой класс задает точку на плоскости:
(1) P2Point
(2) R2Point
(3) Point
(4) 2Point
Выпуклая оболочка трех точек, не лежащих на одной прямой, — это:
(1) треугольник
(2) многоугольник
(3) прямоугольник
(4) четырехугольник
Какой метасимвол в грамматике G2 обозначает множитель:
(1) T
(2) F
(3) M
(4) V
Для представления ребер полиэдра необходимо использовать класс:
(1) Vertex
(2) Edge
(3) Vfex
(4) Num
Научиться писать понятные и легко модифицируемые программы на языке Java легко, если соблюдать следующие правила:
(1) использовать в программе осмысленные имена для всех переменных, отличных от счетчиков и других подобных величин
(2) всем константам, отличным от нуля и единицы, присваивать имена
(3) соблюдать принятый в языке стиль написания имен
(4) применять разумное форматирование текста программы
(5) там, где это необходимо, используйть комментарии
Цепочки часто называют:
(1) словами
(2) фразами
(3) определениями
(4) предложениями
С помощью кодировки ASCII стандартизированы:
(1) первые 128 символов
(2) первые 256 символов
(3) первые 64 символа
(4) первые 32 символа
Какой из операторов цикла языка Java обычно используют в ситуации, когда тело цикла нужно выполнить нуль или более раз:
(1) while
(2) do-while
(3) for
(4) do-while-do
Определение понятия правильная программа зависит от:
(1) результата, который должен быть получен в процессе выполнения программы
(2) от того, в каких условиях начинается ее выполнение
(3) от того, в каких условиях заканчивается ее выполнение
Спецификация задачи на итерацию имеет вид:
(1) "S0;while(e);"
(2) {Q}"S0;while S;"{Q,R}
(3) {Q}"S0;while(e)S;"
(4) {Q}"S0;while(e)S;"{R}
Программирование называют:
(1) целенаправленной деятельностью
(2) хаотической деятельностью
(3) не направленной деятельностью
(4) не подконтрольной деятельностью
Для того чтобы расширить сферу применимости схемы вычисления индуктивной функции вводится понятие:
(1) индуктивного расширения
(2) дидуктивного расширения
(3) абдуктивного расширения
(4) сильного расширения
Попытки каких подходов неизменно терпели неудачу:
(1) к программированию как к технической дисциплине
(2) к программированию как к математической дисциплине
(3) к созданию программ как к промышленному производству
Основные задачи конструктора заключаются в следующем:
(1) в выделении памяти под вновь создаваемый объект
(2) в выделении памяти под вновь создаваемый класс
(3) в инициализация вновь создаваемого класса
(4) в инициализация вновь создаваемого объекта
Основанная на связи площади с векторным произведением формула использует:
(1) одно умножение
(2) два умножения
(3) три умножения
(4) четыре умножения
Утилита make позволяет значительно облегчить труд программиста в процессе:
(1) написания большой программы
(2) отладки большой программы
(3) тестирования большой программы
Какой класс позволяет создать фрейм и, используя простейшие графические примитивы, построить в нем требуемое изображение:
(1) Frame
(2) Drawer
(3) Awt
(4) Set
В языке Java существует:
(1) около пяти десятков зарезервированных ключевых слов
(2) около шести десятков зарезервированных ключевых слов
(3) около семи десятков зарезервированных ключевых слов
(4) около восьми десятков зарезервированных ключевых слов
Значение любого константного предиката находится с помощью:
(1) таблицы истинности
(2) таблицы ложности
(3) дерева вывода для него
Два последовательных байта для кодирования всех возможных символов использует следующий стандарт:
(1) Ucode
(2) KOI8-R
(3) Windows-1251
(4) Unicode
Дополнительными средствами, используемыми при организации циклов, являются операторы:
(1) break
(2) circle
(3) draw
(4) continue
В данном случае:{Q} S {R} предикат R называется
(1) выходным утверждением программы S
(2) входным утверждением S
(3) постусловием
(4) предусловием
Инвариант помогает сконструировать команды:
(1) S0
(2) Q
(3) R
(4) S
При использовании основного метода построения инварианта часто удается получить:
(1) тип цикла
(2) условие продолжения цикла
(3) условие окончания цикла
(4) условие начала цикла
Для любой функции на пространстве последовательностей существует и единственно:
(1) ее минимальное индуктивное расширени
(2) ее минимальное дидуктивное расширени
(3) ее минимальное абдуктивное расширени
Основные свойства любого алгоритма — это:
(1) конечность
(2) определенность
(3) вход (ввод)
(4) выход (вывод)
(5) эффективность
Язык Java реализует возможность использования уже существующих типов для порождения новых с автоматическим наследованием уже имеющихся свойств следующие механизмы:
(1) расширения или наследования классов
(2) реализация классов
(3) расширение интерфейсов
(4) реализации интерфейсов
Выяснение того факта, лежат ли три точки на одной прямой, сводится к вычислению площади треугольника и:
(1) сравнению ее с нулем
(2) сравнению ее с единицей
(3) сравнению ее с эталоном
(4) сравнению ее со стандартом
Какой метод может обеспечивать обработку всех тех отложенных операций, которые выполнимы в данный момент:
(1) SuspendedSymbols
(2) processSymbols
(3) processSuspended
(4) processSuspendedSymbols
Какой метод класса Graphics с помощью метода drawLine рисует заданный отрезок:
(1) circle
(2) draw
(3) merge
(4) paint
Объект Xterm:
(1) содержит в себе некоторую информацию
(2) не содержит в себе информации
(3) находится в некотором состоянии
Среди огромного множества всех предикатов особую роль играют те из них, которые всегда являются:
(1) ложными
(2) простыми
(3) сложными
(4) истинными
Для хранения переменной типа long в языке Java отводится:
(1) восемь байт
(2) два байта
(3) четыре байта
(4) один байт
Какой оператор отсутствует в языке Java:
(1) while
(2) continue
(3) for
(4) goto
Следующая спецификация:{i=0}"i++;"{i=0}:
(1) истинна при j=1 и ложна в остальных состояниях
(2) истинна при j=0 и ложна в остальных состояниях
(3) является тавтологией
(4) ложна во всех состояниях
Ограничивающая функция h:X ->{Z}:
(1) отрицательная функция, являющаяся верхней границей числа оставшихся итераций цикла
(2) неотрицательная функция, являющаяся нижней границей числа оставшихся итераций цикла
(3) неотрицательная функция, являющаяся верхней границей числа оставшихся итераций цикла
(4) отрицательная функция, являющаяся нижней границей числа оставшихся итераций цикла
Методами построения инварианта являются:
(1) устранение конъюнктивного члена
(2) расширение области значений переменной
(3) замена константы переменной
(4) добавление дизъюнктивного члена
Каноническое минимальное индуктивное расширение для доказательства теоремы о минимальном индуктивном расширении для любой функции f:X*->Y, строится в:
(1) в два этапа
(2) в три этапа
(3) в четыре этапа
В настоящее время существует:
(1) несколько десятков языков программирования
(2) несколько сот языков программирования
(3) несколько тысяч языков программирования
Какие квалификаторы доступа определяют доступность данных или метода, реализуя возможность инкапсуляции:
(1) private
(2) protected
(3) sec
(4) public
Площадь треугольника можно сделать неориентированной, если использовать метод:
(1) Math.ab
(2) Math
(3) Math.no
(4) Math.abs
В случае программ на языках C и C++ компилятор позволяет получить файл, который содержит:
(1) машинные команды
(2) байт-код
(3) не позволяет получить файл
(4) текст
В каком классе реализуется метод Main:
(1) Test
(2) PolyedrTest
(3) Polyedr
(4) TestPolyedr
Дополнительные объекты называют:
(1) параметрами
(2) ключами
(3) аргументами
Использование законов эквивалентности позволяет производить следующее полезное действие:
(1) локализовать предикаты
(2) упрощать предикаты
(3) глобализовать предикаты
(4) усложнять предикаты
В шестнадцатеричной системе в качестве цифр от десяти до пятнадцати используются буквы:
(1) отA доF соответственно
(2) отA доD соответственно
(3) отA доH соответственно
(4) отA доG соответственно
Данная программа:public class FibIv1 { public static void main(String[] args) throws Exception { int n = Xterm.inputInt("Введите n -> "); Xterm.print("f(" + n + ")"); if (n < 0) { Xterm.print(" не определено\n"); } else if (n < 2) { Xterm.println(" = " + n); } else { long i = 0; long j = 1; long k; int m = n; while (--m > 0) { k = j; j += i; i = k; } Xterm.println(" = " + j); } } }печатает n-ое число Фибоначчи и имеет:
(1) линейную сложность
(2) структурную сложность
(3) логарифмическую сложность
(4) симптоматическую сложность
Программа S является правильной при заданных Q и R, если спецификация {Q} S {R} является:
(1) ложной
(2) тавтологией
(3) ложной при любых условиях
Cвойствами наибольшего общего делителя являются:
(1) gcd(x,y)=gcd(x,y-x)=gcd(x-y,y)
(2) gcd(x,y)=gcd(x,y+x)=gcd(x+y,y)
(3) gcd(x,x)=x,gcd(x,y)=gcd(y,x)
(4) gcd(x,0)=gcd(0,x)=x
Предикат 5i<10 можно ослабить до:
(1) 10i=10
(2) 0i<10
(3) 5i=10
(4) 5i>10
Второе условие критерия минимальности выполнено по построению:
(1) для канонического максимального индуктивного расширения
(2) для канонического минимального индуктивного расширения
(3) для канонического достаточного индуктивного расширения
Какое свойство определяет то, что алгоритм всегда обязан иметь одну или несколько выходных величин:
(1) выход (вывод)
(2) вход (ввод)
(3) определенность
(4) конечность
Основными контейнерами являются:
(1) enumeration
(2) vector
(3) dynamic vector
(4) stack
(5) static vector
Для создания аплетов необходимо реализовывать подкласс класса:
(1) App
(2) Applet
(3) New
(4) Newapp
В римской системе счисления число 438 может быть представлено так:
(1) DCXLIX
(2) CDXXXVIII
(3) MMMDCLXXVIII
(4) MMMDLV
Затененные участки - это:
(1) маркеры
(2) пятна
(3) просветы
(4) тени
Множество всех объектов с одинаковым пространством состояний и одинаковым набором методов называется:
(1) пространством
(2) классом
(3) набором объектов
(4) секцией
Идентификатор, не являющийся связанным называется:
(1) начальным
(2) простым
(3) основным
(4) свободным
Множество элементов типа byte можно представлять себе в виде свернутого в кольцо отрезка
(1) [-127,128]
(2) [-127,127]
(3) [-128,128]
(4) [-128,127]
Когда возникает необходимость хранить несколько однотипных значений используют:
(1) константу
(2) переменную
(3) массив
Предикат, описывающий максимально сильные ограничения на состояние переменных программы S, которые могут быть получены при данном предусловии Q:
(1) сильнейшее предусловие
(2) сильнейшее постусловие
(3) слабейшее постусловие
(4) слабейшее предусловие
При работе с индуктивными функциями алфавитом X последовательности X* элементов является:
(1) произвольное непустое множество
(2) произвольное пустое множество
(3) определенное непустое множество
(4) определенное пустое множество
При построении инварианта с помощью метода устранения конъюнктивного члена в качестве условия продолжения цикла e может быть взято:
(1) отрицание удаленного дизъюнктивного члена
(2) отрицание добавленного дизъюнктивного члена
(3) отрицание добавленного конъюнктивного члена
(4) отрицание удаленного конъюнктивного члена
Данная программа:public class NumMaxSeq2 { public static void main(String[] args) { int y1 = 0, y2 = Integer.MIN_VALUE; try { while (true) { int x = Xterm.inputInt("x -> "); if (x == y2) { y1 += 1; } else if(x > y2) { y1 = 1; y2 = x; } } } catch (Exception e) { Xterm.println("\nn = " + y1); } } }вводит последовательность целых чисел, и печатает:
(1) количество ее максимальных элементов
(2) количество ее минимальных элементов
(3) количество ее достаточных элементов
(4) количество ее необходимых элементов
Способ концептуализации, который определяет, как следует проводить вычисления, и как работа, выполняемая компьютером, должна быть структурирована и организована - это:
(1) школа в программировании
(2) направление в программировании
(3) концепция в программировании
(4) парадигма в программировании
Какой линейный двусвязный список — можно представлять себе в виде перекидного календаря или бус, нанизанных на нить:
(1) L-список
(2) R-список
(3) 2-список
(4) L2-список
Для целей вывода графической информации достаточно в классе, выведенном из класса Applet, переопределить метод:
(1) point
(2) image
(3) paint
(4) graphic
Римскому числу MMMCMXCIX соответствует следующее:
(1) 1090
(2) 399
(3) 2009
(4) 3999
В каждом экземпляре класса Segment должны храниться:
(1) многомерные координаты начала и конца обрабатываемого отрезка
(2) полимерные координаты начала и конца обрабатываемого отрезка
(3) одномерные координаты начала и конца обрабатываемого отрезка
(4) двухмерные координаты начала и конца обрабатываемого отрезка
Пустую строку обозначает:
(1) "**
(2) **
(3) "
(4) ""
Для предикатов с кванторами справедливы дополнительные законы эквивалентности, называемые также:
(1) правилами построения сложения
(2) правилами построения отрицания
(3) правилами построения сравнения
(4) правилами построения предикатов
Для хранения переменной типа double в языке Java отводится:
(1) восемь байт
(2) четыре байта
(3) два байта
(4) один байт
Для того, чтобы зарезервировать память для элементов массива на языке Java необходимо воспользоваться оператором:
(1) new
(2) array
(3) term
(4) print
Какое свойство является закон исключенного чуда преобразователя предикатов wp(S,R):
(1) wp(S,Q)^wp(S,R)=wp(S,Q^R)
(2) wp(S,Q^R)
(3) wp(S,Q^R)=wp(S,Q)
(4) wp(S,F)=F
При работе с индуктивными функциями последовательности X* элементов алфавита X цепочки над последним часто называют:
(1) словами
(2) фразами
(3) определениями
(4) предложениями
Простейший способ увеличения величины a, при построении инварианта с помощью метода устранения конъюнктивного члена, - это:
(1) увеличивать a на единицу на каждой итерации цикла
(2) увеличивать a на единицу на каждой рекурсии цикла
(3) увеличивать a на единицу на каждой конкатенации цикла
Данная программа:public class First1{ public static void main(String[] args) throws Exception { int x0 = Xterm.inputInt("x0 ->"); int y1 = 0, y2 = 0; try { while (true) { int x = Xterm.inputInt("x -> "); y2 += 1; if ( (y1 == 0) && (x == x0) ) y1 = y2; } } catch (Exception e) { Xterm.println("\nn = " + y1); } } }по достижению конца вводимой последовательности:
(1) не выполняет никаких специальных действий
(2) выполняет специальные действия
(3) выдает ошибку
(4) выгружается
Активным началом в директивном программировании считаются:
(1) программа
(2) объекты
(3) данные
Реализация очереди на базе так называемого "циклического вектора" является примером:
(1) непрерывной реализации
(2) прерывной реализации
(3) простой реализации
(4) сложной реализации
Графический примитив fillRect позволяет:
(1) изобразить отрезок прямой линии
(2) изобразить границу прямоугольника
(3) изобразить заполненный овал
(4) изобразить заполненный прямоугольник
В римской системе цифра D всегда обозначает:
(1) 50
(2) 100
(3) 500
(4) 1000
Боковая поверхность полубесконечной призмы параллельна:
(1) начальному вектору
(2) конечному вектору
(3) вектору проектирования
(4) вектору разложения
В том случае, когда программа использует ввод чисел, строку:public static void main(String[] args) следует заменить на:
(1) public static void main(String[] args) throws
(2) public static void main(String[] args) Exception
(3) public static void main(String[]) Exception
(4) public static void main(String[] args) throws Exception
В языке Java левоассоциативность обозначается символом:
(1) +-
(2) -+
(3) -->
(4) <--
При делении единицы на минус ноль получается:
(1) плюс бесконечность
(2) минус бесконечность
(3) не число
(4) минус ноль
Для доступа к i-му элементу массива используется выражение:
(1) a[]
(2) a[i]
(3) a=i
Выражение b[i] само по себе может оказаться неопределенным:
(1) из-за корректного значения индекса i
(2) из-за некорректного значения индекса i
(3) из-за некорректного значения индекса b
(4) из-за корректного значения индекса b
Данная операция:o:X* x X* -> X* является операцией:
(1) сложения
(2) конкатенации
(3) умножения
(4) сцепления
При написании программы, определяющей первое вхождение заданного целого числа x в заданный массив b[0..m-1] целых чисел (m>0), если известно, что x находится в массиве b, в качестве ограничивающей функции можно попробовать взять:
(1) h=m+i
(2) h=m-i
(3) m=h+1
(4) i=m+h
Данная программа:public class AverSeq{ public static void main(String[] args) { double y1 = 0., y2 = 0.; try { while (true) { double x = Xterm.inputDouble("x -> "); y1 = (y1*y2 + x) / (y2 + 1.); y2 += 1; } } catch(Exception e) { Xterm.println("\nf = " + y1); } } }вводит последовательность вещественных чисел, и печатает среднее арифметическое ее элементов для:
(1) непустой последовательности
(2) пустой последовательности
(3) любой последовательности
В объектно-ориентированном программировании первичными считаются:
(1) объекты
(2) код
(3) программа
Типичным примером какой реализации является реализация односвязного списка:
(1) такая реализация невозможна
(2) непрерывной
(3) прерывной
(4) ссылочной
Какой из простейших графических примитивов позволяет изобразить отрезок прямой линии:
(1) drawOval
(2) drawRect
(3) drawLine
(4) setColor
В римской системы счисления цифры в записи числа следуют, как правило, в порядке:
(1) возрастания их значений
(2) убывания их значений
(3) произвольном
Значительно облегчает решение задач на модификацию применение утилиты:
(1) make
(2) gcc
(3) df
(4) last
Логическими операторами являются:
(1) !
(2) &
(3) |
(4) ^
(5) ==
(6) !=
Оператор -- языка Java имеет следующий приоритет:
(1) 1
(2) 2
(3) 3
(4) 4
К арифметическим операторам языка Java, которые определены для всех числовых типов, относятся:
(1) ++
(2) !+
(3) !-
(4) --
Часто при решении задачи, связанной с обработкой последовательно поступающих элементов:
(1) есть необходимость запоминать их, складывая в массив
(2) нет необходимости запоминать их, не складывая в массив
(3) нет необходимости запоминать их, складывая в массив
Оператор switch может быть заменен несколькими вложенными друг в друга операторами:
(1) else-if
(2) else-else
(3) if-if
(4) if-else
Схема вычисления индуктивной функции позволяет легко построить программу вида:
(1) "while(e)S;"
(2) "S0;while S;"
(3) "S0;while(e);"
(4) "S0;while(e)S;"
В данном случае:"i=0;s=0;while(i<n)S;" уменьшить h можно:
(1) увеличивая i на единицу на каждой итерации цикла
(2) уменьшая i на единицу на каждой итерации цикла
(3) если не изменять i
Данная программа:import java.io.*; public class ABCDSeq { public static void main(String[] args) { DataInputStream in = new DataInputStream(System.in); int f = 0, n = 0; try { while (true) { char x = (char)in.readByte(); if (x=='\n') continue; if (x=='d' && n==3) { f += 1; n = 0; } else if (x=='c' && n==2) { n = 3; } else if (x=='b' && n==1) { n = 2; } else if (x=='a') { n = 1; } else{ n = 0; } } } catch(Exception e) { Xterm.println("f = " + f); } } }определяет:
(1) количество вхождений образца abc в последовательность символов
(2) количество вхождений образца abcd в последовательность символов
(3) количество вхождений образца bcd в последовательность символов
(4) количество вхождений образца abd в последовательность символов
Главным в функциональном и логическом программировании является:
(1) код
(2) точная формулировка задачи
(3) объекты
(4) данные
Класс состоит из:
(1) данных
(2) объектов
(3) методов, работающих с данными
В данном аплете:import java.awt.*; import java.applet.*; public class Primitives extends Applet { public void paint (Graphics g) { g.fillRect(20, 20, 40, 60); g.setColor(Color.red); g.drawLine(2, 2, 80, 80); g.drawOval(120, 120, 30, 40); g.drawRect(170, 170, 10, 15); g.setColor(Color.blue); g.fillOval(20, 150, 30, 30); } }операторы import обеспечивают подключение:
(1) необходимых классов библиотеки AWT для компиляции этой программы
(2) необходимых классов библиотеки WGTA для компиляции этой программы
(3) необходимых классов библиотеки GWT для компиляции этой программы
(4) необходимых классов библиотеки WAT для компиляции этой программы
Данная программа:public class CompfTest { public static void main(String[] args) throws Exception { Compf c = new Compf(); while (true) c.compile(Xterm.inputChars("Введите формулу -> ")); } }является:
(1) тестом для рекурсивного компилятора формул
(2) Makefile для стекового компилятора и интерпретатора формул
(3) Makefile для рекурсивного компилятора формул
(4) тестом для стекового компилятора формул
Многострочный комментарий:
(1) начинается с символов /**
(2) начинается с символов /*
(3) завершается символами **/
(4) завершается символами */
Могут ли быть вложенным управляющие конструкции if и if-else?
(1) Да
(2) Нет
(3) Может быть только if
(4) Может быть только if-else
Данный оператор != языка Java имеет следующий тип операций:
(1) простой
(2) объект
(3) целый
(4) логический
К побитовым операторам языка Java относятся следующие:
(1) &=
(2) &
(3) !~
(4) ~
Нечто препятствующее продолжению нормального выполнения программы:
(1) ошибочная ситуация
(2) недопустимая ситуация
(3) тупиковая ситуация
(4) исключительная ситуация
В терминах слабейшего предусловия можно определить:
(1) все оставшиеся еще неопределенными конструкции языка
(2) все оставшиеся еще неопределенными конструкции сильнейшего постусловия
(3) ни чего нельзя определить
При решении задач на рекурсию необходимо:
(1) обосновать почему программа заканчивает работу
(2) почему после завершения программы не будет получен требуемый результат
(3) почему после завершения программы будет получен требуемый результат
При нахождении минимального числа, содержащегося в каждом из трех упорядоченных по возрастанию массивов целых чисел, в предположении, что таковое существует, в качестве действий, которые будут приближать цикл к завершению можно использовать следующие операторы:
(1) "i++;"
(2) "j++;"
(3) "k++;"
Как в данной программе:import java.io.*; public class ABCDSeq { public static void main(String[] args) { DataInputStream in = new DataInputStream(System.in); int f = 0, n = 0; try { while (true) { char x = (char)in.readByte(); if (x=='\n') continue; if (x=='d' && n==3) { f += 1; n = 0; } else if (x=='c' && n==2) { n = 3; } else if (x=='b' && n==1) { n = 2; } else if (x=='a') { n = 1; } else{ n = 0; } } } catch(Exception e) { Xterm.println("f = " + f); } } }игнорируется символ '\n':
(1) данный символ не игнорируется
(2) "if (x=='\n') continue"
(3) "(x=='a')"
(4) "if (x=='d' && n==3)"
Класс Xterm языка Java:
(1) не ограждает начинающего программиста от сложностей реального мира языка Java
(2) ограждает начинающего программиста от сложностей реального мира языка Java
(3) предназначен для реализации сложнейших алгоритмов языка
методология программирования, основанная на представлении программы в виде совокупности объектов, каждый из которых является реализацией определенного типа, использующая механизм пересылки сообщений и классы, организованные в иерархию наследования называется:
(1) объектно-ориентированное программирование
(2) ООП
(3) директивное программирование
(4) структурное программирование
Использование аплетов дает возможность:
(1) решать задачи на изображение графиков функций
(2) решать задачи на изображение различных графических объектов
(3) решать задачи на изображение различных графических классов
Для задания грамматики часто используют очень наглядную форму представления, называемую:
(1) ФБН
(2) НФБН
(3) НФФН
(4) БФН
Многоугольники набора выпуклых плоских многоугольников называются:
(1) секциями
(2) гранями
(3) сторонами
(4) графами
Язык Java обладает следующими качествами:
(1) простота и мощь
(2) безопасность
(3) объектная ориентированность
(4) надежность
(5) интерактивность
В программировании ошибку гораздо легче:
(1) найти
(2) предотвратить
(3) исправить
Какая информация в компьютере представляется в двоичной форме:
(1) числовая
(2) текстовая
(3) звуковая
(4) графическая
В вычислении рекурсивно определенной функции на множестве программных переменных заключается:
(1) математическая модель конкатенации
(2) математическая модель рекурсии
(3) математическая модель итерации
(4) математическая модель присваивания
В тех случаях, когда утверждения проверки корректности хода выполнения программы предназначены только для человека, они оформляются в виде:
(1) специального буфера
(2) комментариев
(3) специального блока
(4) специальной секции
При решении задач на "программирование в малом" оправдано применение различных методов разработки программ типа:
(1) проектирования справа налево
(2) проектирования слева направо
(3) проектирования снизу вверх
(4) проектирования сверху вниз
Свойствами преобразователя предикатов wp или определением оператора цикла являются:
(1) {Q}"S0;"{I}
(2) {I^e}"S;"{I}
(3) {I^e}"h1=h;S;"{h<h1}
(4) {Q}"S0;"
Какая функция позволяет написать программу, реализующую схему вычисления индуктивной функции:
(1) X
(2) G
(3) Y
(4) T
(5) M
(6) N
Электронные вычислительные машины (ЭВМ), часто используются в качестве:
(1) формального исполнителя команд
(2) универсального исполнителя команд
(3) неформального исполнителя команд
(4) специализированного исполнителя команд
Техника, при которой несущественная с точки зрения интерфейса объекта информация прячется внутри него называется:
(1) инкапсуляция
(2) наследование
(3) полиморфизм
(4) абстрагирование
Выпуклыми множествами не являются:
(1) окружность
(2) граница квадрата
(3) куб
(4) тор
(5) шар в пространстве
(6) прямое произведение двух окружностей
Для формулы x+y*z существует два существенно различных множества эквивалентных между собой цепочек вывода, каждому из которых соответствует:
(1) свое дерево вывода
(2) общее дерево вывода
(3) ни одно из деревьев
При изображении полиэдра реально рисуются:
(1) его грани
(2) его ребра
(3) линии, ограничивающие многоугольники
(4) линии, не ограничивающие многоугольники
Технология программирования, в основе которой лежит способность человека обобщать, классифицировать и генерировать абстракции - это:
(1) директивное программирование
(2) объектно-ориентированное программирование
(3) функциональное программирование
(4) логическое программирование
Предикат, обладающий некоторыми специальными свойствами - это:
(1) инвариант цикла
(2) вариант цикла
(3) инкремент цикла
(4) лексема цикла
Наименьшей единицей измерения информации является:
(1) байт
(2) бит
(3) килобайт
(4) мегабайт
(5) гигабайт
(6) терабайт
Математическая модель итерации сводится к повторению некоторого преобразования T:X -> X:
(1) на множестве переменных программы T
(2) на множестве переменных программы X
(3) на множестве констант программы X
(4) на множестве констант программы T
В программах на языке C можно использовать следующий макрос, который в случае ложности его аргумента немедленно прекращает выполнение программы, сообщая о причине этого:
(1) asert(P)
(2) assert(P)
(3) accept(P)
(4) acept(P)
(5) accert(P)
(6) acert(P)
Для каких задач аккуратная формулировка постановки задачи является проблемой:
(1) маленькие проекты
(2) простейшие задачи
(3) задачи на "программирование в малом"
(4) примитивные задачи
(5) большие проекты
(6) мегапроекты
На практике постановка задачи:
(1) не включает в себя инвариант
(2) включает в себя инвариант
(3) должна включать в себе инвариант
Если при доказательстве теоремы о критерии индуктивности найдутся две различные цепочки a и b такие, что f(a) = f(b), то можно гарантировать, что:
(1) f(a o x)=f(b o x)
(2) f(a x)=f(b x)
(3) f(a o x)=f(b x)
(4) f(a x)=f(b o x)
При кодировании алгоритма формальная система, предназначенная для записи алгоритмов, называется:
(1) алгоритмической системой
(2) алгоритмическим языком
(3) алгоритмической структурой
(4) алгоритмическим графом
Множество объектов, связанных общностью структуры и поведения; абстрактное описание данных и поведения (методов) для совокупности похожих объектов, представители которой называются экземплярами класса называется:
(1) класс
(2) объект
(3) блок
(4) секция
Выпуклой оболочкой двух точек на плоскости является:
(1) отрезок, их разъединяющий
(2) отрезок
(3) отрезок, их соединяющий
(4) такой оболочки не существует
Какой метасимвол в грамматике G2 обозначает имя переменной:
(1) V
(2) M
(3) T
(4) F
(5) N
Какой класс позволит задать произвольный вектор и обеспечит все необходимые манипуляции над векторами в трехмерном пространстве:
(1) RVector
(2) R1Vector
(3) R2Vector
(4) R3Vector
Произвольный объектно-ориентированный язык программирования характеризуют следующие основных свойства:
(1) инкапсуляция
(2) наследование
(3) полиморфизм
(4) структурность
В теории формальных языков принято задавать язык с помощью:
(1) лексем
(2) грамматики
(3) инструкций
(4) синтаксиса
При написании рекурсивных программ обычно необходимо исследовать следующие основные вопросы:
(1) всегда ли программа работает
(2) всегда ли и почему программа заканчивает работу
(3) почему после окончания работы программы не будет получен требуемый результат
(4) почему после окончания работы программы будет получен требуемый результат
При вводе неположительного числа данная программа:public class Assert { public static void main(String[] args) throws Exception { int n = Xterm.inputInt("Введите n -> "); if (n <= 0) throw new Exception("n <= 0"); Xterm.println("n = " + n); } }прекращает свое выполнение и печатает следующий текст:
(1) java.lang.Exception: n<=0 at Assert.main(Assert.java:4)
(2) lang.Exception: n<=0 at Assert.main(Assert.java:5)
(3) java.Exception: n<=0 at Assert.main(Assert.java:2)
(4) java.lang: n<=1 at Assert.main(Assert.java)
Название классификации методов решения задач на обработку информаци - это:
(1) графики обработки информации
(2) графы обработки информации
(3) схемы обработки информации
(4) таблицы обработки ннформации
Что соответствует отсутствию ограничений на начальные условия, в которых должна правильно работать программа:
(1) То, что предусловие Q достаточно часто имеет вид T
(2) То, что предусловие Q достаточно часто имеет вид R
(3) То, что предусловие T достаточно часто имеет вид Q
(4) То, что предусловие T достаточно часто имеет вид R
(5) То, что предусловие T достаточно часто имеет вид N
(6) То, что предусловие Q достаточно часто имеет вид N
Для функции f:{0,1}*->{T,F} все элементы цепочки:
(1) равны нулю
(2) равны единице
(3) равны двум
(4) равны трем
(5) равны четырем
(6) равны пяти
Какая наука занимается исследованием свойств алгоритмов и разработкой методов построения программ?
(1) наука кодирование(computer science)
(2) наука программирование(computer science)
(3) компьютерная наука(computer science)
Объявление переменной можно совмещать:
(1) с созданием нового класса
(2) с созданием нового объекта
(3) с созданием нового блока
(4) с созданием новой секции
Класса R2Point вполне достаточно для реализации классов:
(1) Void
(2) Seg
(3) Point
(4) Id
(5) Segment
(6) Tpoint
Какой метасимвол в грамматике G2 обозначает формулу:
(1) V
(2) T
(3) M
(4) N
(5) P
(6) F
Грани полиэдра можно описать с помощью класса:
(1) Edge
(2) Begin
(3) After
(4) Gran
(5) Facet
(6) Vertex
Компилятор языка Java запускается обычно с помощью команды:
(1) java Filename.java
(2) javac Filename.java
(3) jv Filename.java
(4) javacomp Filename.java
Для задания грамматики часто используют очень наглядную форму представления, называемую:
(1) НФБН
(2) НФБ
(3) НФФН
(4) ФБН
(5) НФБА
(6) АФБН
Символы русского алфавита расположены во второй половине таблицы:
(1) из 32 символов
(2) из 64 символов
(3) из 128 символов
(4) из 256 символов
(5) из 512 символов
(6) из 1024 символов
Какой из операторов цикла языка Java применяется, если выполнение тела цикла хотя бы раз обязательно:
(1) for
(2) do-while-do
(3) while
(4) do-while
Спецификацией {Q} S {R} программы S, где Q и R — предикаты, называется предикат, означающий, что если выполнение S началось в состоянии, удовлетворяющем Q, то имеется гарантия, что оно завершится через конечное время:
(1) в состоянии, удовлетворяющем R
(2) в состоянии, удовлетворяющем Q
(3) в состоянии, удовлетворяющем S
(4) в состоянии, удовлетворяющем T
Математическая модель итерации является слишком общей и:
(1) трудно применимой на практике
(2) легко применимой на практике
(3) не применимой на практике
Описание того, что происходит с множеством переменных программы в процессе выполнения цикла называется:
(1) теорией сферы
(2) теорией воздушного шарика
(3) теорией квадрата
(4) теорией гипербарического параболоида
Для вычисления значения f(w) не являющейся индуктивной функции f на цепочке w применяется следующая:
(1) упрощенная схема
(2) обобщенная схема
(3) простая схема
(4) сложная схема
В математике существует несколько вполне четких определений алгоритма:
(1) неэквивалентных между собой
(2) эквивалентных между собой
(3) эквивалентных между собой в редких случаях
(4) рассматривающие различные составляющие алгоритма
Переменные, которые всегда имеются ровно в одном экземпляре, независимо от того как много имеется объектов данного класса называются:
(1) переменными объекта
(2) константами класса
(3) переменными класса
(4) константами объекта
Два объекта типа R2Point соответствуют совпадающим точкам плоскости тогда и только тогда, когда:
(1) попарно равны их координаты
(2) равны их координаты
(3) попарно не равны их координаты
(4) не равны их координаты
В специальном управляющем файле, обычно именуемом Makefile, необходимо указать следующие цели, которые должны быть достигнуты в процессе работы над проектом:
(1) конечные
(2) промежуточные
(3) начальные
(4) краткосрочные
В каком классе определены все основные графичиские примитивы:определены все основные графические примитивы:
(1) Frame
(2) Drawer
(3) Awt
(4) Graphics
(5) Set
(6) Edge
Сколько существует видов комментариев в языке Java:
(1) один
(2) два
(3) три
(4) четыре
(5) пять
Прямое произведение множеств состояний всех переменных программы - это:
(1) пространство состояний констант программы
(2) пространство состояний переменных программы
(3) пространство состояний констант и переменных программы
К целочисленным типам в языке Java относятся:
(1) byte
(2) short
(3) float
(4) int
(5) double
(6) long
Какой из операторов языка Java прерывает выполнение цикла:
(1) continue
(2) break
(3) do-while
(4) for
(5) while
(6) draw
Так как спецификация программы является предикатом, то она может быть:
(1) истинной
(2) ложной
(3) простой
(4) сложной
(5) пустой
(6) полной
Любая тавтология является:
(1) инвариантом произвольного цикла
(2) инвариантом определенного цикла
(3) рекурсией цикла
При использовании основного метода построения инварианта и получении условия продолжения цикла в его качестве берется:
(1) отрицание того предиката, которым ослабляется постусловие
(2) отрицание того предиката, которым усиливается постусловие
(3) отрицание того предиката, которым ослабляется предусловие
(4) отрицание того предиката, которым усиливается предусловие
Минимальное индуктивное расширение любой функции f:X*->Y единственно с точностью до:
(1) экзоморфизма
(2) изоморфизма
(3) эндоморфизма
(4) мезоморфизма
Какое свойство определяет то, что алгоритм должен всегда заканчиваться после выполнения конечного числа шагов:
(1) определенность
(2) эффективность
(3) конечность
(4) выход (вывод)
В языке Java каждый существующий класс неявно наследует класс:
(1) Stack
(2) Compf
(3) Symbol
(4) Object
(5) Document
(6) Point
Минимальный прямоугольник со сторонами, параллельными осям координат, содержащий отрезок - это:
(1) ограниченный прямоугольник
(2) конечный прямоугольник
(3) ограничивающий прямоугольник
(4) такого прямоугольника не существует
Интерпретатор вычисляет значение арифметической формулы, в которой вместо имен переменных содержатся:
(1) записанные тем или иным способом строки
(2) записанные тем или иным способом числа
(3) арифметические формулы должны содержать имена переменных
Ряд методов какого класса предназначен для нахождения координат проекции произвольного трехмерного вектора, как реальных, так и нормализованных:
(1) AwtDrawer
(2) FirstDrawer
(3) SimpleDrawer
(4) EndDrawer
Множество всех состояний, в которых может находиться объект Xterm, называется:
(1) потенциальными состояниями
(2) количеством состояний
(3) пространством состояний
(4) допустимыми состояниями
Если предикат истинен во всех состояниях, в которых он определен, то он называется:
(1) константой
(2) тавтологией
(3) положительным
(4) постоянным
(5) главным
(6) кольцом
В Java применяется представление чисел в так называемом:
(1) двоичном дополнительном формате
(2) двоичном дополнительном коде
(3) двоичном коде
(4) двоичном формате
Данная программа:public class FactIv1 { public static void main(String[] args) throws Exception { int n, i, k; n = Xterm.inputInt("Введите n -> "); i = k = 1; while (i <= n) { k *= i; i += 1; } Xterm.println("" + n + "! = " + k); } }вычисляет:
(1) логарифм введенного натурального числа
(2) предикат введенного натурального числа
(3) факториал введенного натурального числа
(4) интеграл введенного натурального числа
Следующая спецификация:{i=0}"i++;"{i=j}:
(1) ложна во всех состояниях
(2) истинна при j=0 и ложна в остальных состояниях
(3) истинна при j=1 и ложна в остальных состояниях
(4) является тавтологией
(5) истинна при j=2 и ложна в остальных состояниях
Что делает данная программа:public class MulI { public static void main(String[] args) throws Exception { int a = Xterm.inputInt("a -> "); int b = Xterm.inputInt("b -> "); int x = a, y = b, z = 0; while (y > 0) { if ((y&1) == 0) { y >>>= 1; x += x; } else { y -= 1; z += x; } } Xterm.println("a * b = " + z); } }:
(1) перемножает два целых числа, одно из которых неотрицательно, без использования операции умножения
(2) перемножает два вещественных числа, одно из которых неотрицательно, без использования операции умножения
(3) перемножает два целых числа, одно из которых неотрицательно, с помощью операции умножения
(4) перемножает два целых числа, одно из которых отрицательно, с помощью операции умножения
Предикат A^B^C можно ослабить до:
(1) A^C
(2) A^B
(3) B^C
(4) C^B
(5) B^A
Каноническое индуктивное расширение, построенное в ходе доказательства теоремы о минимальном индуктивном расширении для любой функции f:X*->Y, позволяет убедиться в истинности:
(1) критерия максимальности
(2) критерия минимальности
(3) критерия достаточности
(4) критерия существования
Учения о том, как надо писать программы называются:
(1) направлениями
(2) течениями
(3) парадигмами программирования
(4) ветвями
Классы, которые используются как структуры данных, содержащие набор элементов называются:
(1) контейнерные классы
(2) блочные классы
(3) секционные классы
Одним из важнейших отличий является то, что аплет не содержит метода main и:
(1) не может быть запущен самостоятельно
(2) может быть запущен самостоятельно
(3) это не является важнейшим отличием аплетов
Для языка Java компилятор строит так называемый:
(1) бит-код
(2) байт-код
(3) виртуальный код
(4) исполняемый код
Метод main класса PolyedrTest выполняет ввод:
(1) имени файла с описанием изображаемого полиэдра
(2) конкретного способа изображения
(3) вектора проектирования
(4) угла поворота в плоскости проекции
Завершается любой оператор в языке Java:
(1) точкой
(2) запятой
(3) точкой с запятой
(4) двоеточием
Определены следующие кванторы:
(1) всеобщности
(2) существования
(3) существования и единственности
В типе byte языка Java любое число занимает:
(1) 1 бит
(2) 2 бита
(3) 4 бита
(4) 8 бит
Чем быстрее компьютер, тем больше:
(1) относительный проигрыш при использовании плохого алгоритма
(2) абсолютный проигрыш при использовании плохого алгоритма
(3) относительный проигрыш при использовании хорошего алгоритма
(4) абсолютный проигрыш при использовании хорошего алгоритма
С практической точки зрения особый интерес представляют программы, которые позволяют:
(1) получить нужный результат при минимальных требованиях к начальным условиям
(2) достичь как можно большего при фиксированном предусловии
(3) получить нужный результат при максимальных требованиях к начальным условиям
(4) получить нужный результат при максимальных требованиях к конечным условиям
Данная программа:public class Gcd { public static void main(String[] args) throws Exception { int x = Xterm.inputInt("x -> "); int y = Xterm.inputInt("y -> "); Xterm.print("gcd(" + x + "," + y + ") ="); while ( (x != 0) && (y != 0) ) { if (x >= y) x -= y; else y -= x; } Xterm.println(" " + (x+y)); } }находит наибольший общий делитель gcd(x,y) двух целых неотрицательных чисел x и y:
(1) равных одновременно двум
(2) не равных одновременно единице
(3) равных одновременно нулю
(4) не равных одновременно нулю
При ослаблении предиката 5<i<10 до 0<i<10 имеет место:
(1) расширение области значений переменной
(2) замена константы переменной
(3) замена константой переменной
(4) сужение области значений переменной
Минимальные индуктивные расширения обладают тем достоинством, что позволяют свести к минимуму ту дополнительную информацию, которая необходима для:
(1) дидуктивного перевычисления исходной функции
(2) абдуктивного перевычисления исходной функции
(3) индуктивного перевычисления исходной функции
(4) простого перевычисления исходной функции
(5) сложного перевычисления исходной функции
Какое свойство требует от алгоритма того, чтобы все операции, которые необходимо произвести в алгоритме, должны быть достаточно простыми, чтобы их в принципе можно было выполнить точно и за конечное время с помощью карандаша и бумаги?
(1) конечность
(2) эффективность
(3) вход (ввод)
(4) выход (вывод)
(5) определенность
Контейнер, который можно представлять себе в виде трубы с одним запаянным концом, в которую можно добавлять элементы (и вынимать их) называется:
(1) стек
(2) блок
(3) секция
(4) архив
(5) бочка
Подкласс класса Applet, определен в пакете:
(1) java.app
(2) java.applet
(3) jv.applet
(4) jv.app
(5) ja.applet
(6) java.applets
В римской системе счисления число 3678 может быть представлено так:
(1) MMMCMXCIX
(2) MMXLV
(3) XXXIV
(4) XL
(5) XCIX
(6) MMMDCLXXVIII
Для получения изображения видимой части ребра нужно учесть тени от всех граней полиэдра, а затем:
(1) изобразить все оставшиеся просветы
(2) изобразить все оставшиеся маркеры
(3) изобразить все оставшиеся тени
Операторы бывают:
(1) простые
(2) унарными
(3) бинарными
(4) тернарными
(5) сложные
Ограничение на использование кванторов в предикатах таково:
(1) идентификатор не может быть связан двумя различными кванторами
(2) в предикате один и тот же идентификатор не может быть как связанным, так и свободным
(3) идентификатор не может быть связан тремя различными кванторами
(4) идентификатор не может быть связан одним квантором
Для представления вещественных чисел в языке Java используют переменные и константы типов:
(1) float
(2) int
(3) short
(4) double
Для массивов верны утверждения:
(1) являются статическими структурами данных
(2) являются динамическими структурами данных
(3) не являются структурами данных
Преобразователь предикатов wp(S,R) обладает следующими свойствами:
(1) закон исключенного чуда
(2) дистрибутивность конъюнкции
(3) закон монотонности
(4) дистрибутивность дизъюнкции
При работе с индуктивными функциями последовательности X* элементов алфавита X символом последнего является:
(1) только первый его элемент
(2) любой его элемент
(3) только последний его элемент
(4) только второй его элемент
При построении инварианта с помощью метода устранения конъюнктивного члена истинность инварианта перед началом выполнения цикла легко устанавливается присваиванием:
(1) "a=1;"
(2) "a=b;"
(3) "a<-1;"
(4) "a>-1;"
(5) "a=0;"
(6) "a>0;"
В данной программе:public class NumMaxSeq2 { public static void main(String[] args) { int y1 = 0, y2 = Integer.MIN_VALUE; try { while (true) { int x = Xterm.inputInt("x -> "); if (x == y2) { y1 += 1; } else if(x > y2) { y1 = 1; y2 = x; } } } catch (Exception e) { Xterm.println("\nn = " + y1); } } }:любая ошибка при вводе рассматривается как:
(1) начало последовательности чисел
(2) цикл последовательности чисел
(3) завершение последовательности чисел
(4) как специальная секция лишних чисел
Важнейшими парадигмами программирования на данный момент времени являются:
(1) парадигмы директивного программирования
(2) парадигмы объектно-ориентированного программирования
(3) парадигмы функционально-логического программирования
По какому списку можно двигаться только в одном направлении, а вставлять и удалять элементы — только за указателем:
(1) L2-список
(2) L1-список
(3) T2-список
(4) T1-список
Простейшими графическими примитивами являются:
(1) setColor
(2) drawLine
(3) drawRect
(4) drawOval
(5) fillRect
(6) fillOval
Римскому числу MMXLV соответствует следующее:
(1) 1280
(2) 1355
(3) 5050
(4) 260
(5) 1478
(6) 2045
Какой метод инициализирует список просветов list, помещая в него единственный элемент — ребро целиком:
(1) drawEdge
(2) draw
(3) Edge
(4) Edgedraw
Печать чего приведет к тому, что курсор терминала перемещается в начало следующей строки:
(1) "\d"
(2) "\f"
(3) "\g"
(4) "\p"
(5) "\n"
(6) "\o"
Использование круглых скобок для группировки всегда позволяет:
(1) ускорить порядок вычислений
(2) закрепить порядок вычислений
(3) изменить порядок вычислений
(4) замедлить порядок вычислений
Какое свойство определяет то, что между любыми двумя различными числами всегда найдется отличное от них третье:
(1) достаточности
(2) полноты
(3) определенности
(4) следования
Массив из трех целых чисел, содержащий величины 3, 7 и 11, можно задать так:
(1) int a[]=3-11;
(2) int a=3,7,11;
(3) a=3,7,11;
(4) int a[]={3,7,11};
(5) int - 3,7,11;
(6) int + 3,7,11;
В данном случае:wp("System.exit(0);",R)=F выполнение вызова метода "System.exit(0)" приводит:
(1) к немедленному завершению выполнения программы
(2) к отсроченному завершению выполнения программы
(3) не влияет на выполнение программы
(4) к перезапуску программы
Множество всех цепочек над алфавитом X принято обозначать:
(1) S*
(2) S
(3) M*
(4) M
(5) X*
(6) X
При построении инварианта с помощью метода устранения конъюнктивного члена увеличение величины a на единицу на каждой итерации цикла:
(1) не сохраняет инвариант
(2) сохраняет рекурсию
(3) не сохраняет рекурсию
(4) сохраняет инвариант
По достижению конца вводимой последовательности данной программой:public class First1{ public static void main(String[] args) throws Exception { int x0 = Xterm.inputInt("x0 ->"); int y1 = 0, y2 = 0; try { while (true) { int x = Xterm.inputInt("x -> "); y2 += 1; if ( (y1 == 0) && (x == x0) ) y1 = y2; } } catch (Exception e) { Xterm.println("\nn = " + y1); } } }управление передается на:
(1) принтер
(2) на сервер печати
(3) на сканер
(4) оператор печати
Для директивного программирования верны следующие утверждения:
(1) исторически возник одним из первых
(2) практически неприменим для создания больших программ
(3) разработчик программы использует процессно-ориентированную модель
(4) подобный стиль оптимален для программирования в малом
"Сворачивание вектора в кольцо" можно реализовать с помощью метода:
(1) turn
(2) put
(3) forward
(4) ward
Какой из простейших графических примитивов позволяет изобразить границу овала:
(1) drawOval
(2) fillOval
(3) drawLine
(4) setColor
В римской системе цифра M всегда обозначает:
(1) 1000
(2) 500
(3) 100
(4) 50
(5) 10
(6) 1
Треугольную призму можно представить в виде:
(1) пересечения четырех полупространств
(2) пересечения трех полупространств
(3) пересечения пяти полупространств
(4) пересечения двух полупространств
Своеобразное проявление полиморфизма, когда два или более различных методов имеют одно и то же имя и различаются только количеством или типами аргументов - это:
(1) перезагрузка методов
(2) перегрузка методов
(3) обновление методов
(4) переполнение методов
В языке Java правоассоциативность обозначается символом
(1) -->
(2) <--
(3) +-
(4) -+
Для извлечения квадратного корня в языке Java можно использовать:
(1) метод math класса Sqrt
(2) метод sqrt класса Math
(3) метод math класса Sqr
(4) метод sqr класса Math
(5) метод math класса Srt
(6) метод srt класса Math
Данная программа:public class MaxArr { public static void main(String[] args) throws Exception { int n, i, a[]; n = Xterm.inputInt("Введите длину массива n -> "); a = new int[n]; for (i=0; i<n; i++) a[i] = Xterm.inputInt("Введите a[" + i + "] -> "); int max = a[0]; for (i=1; i<n; i++) if (a[i] > max) max = a[i]; Xterm.println("Максимальный элемент массива = " + max); } }печатает:
(1) максимальный элемент пустого массива
(2) минимальный элемент непустого массива
(3) максимальный элемент непустого массива
(4) минимальный элемент пустого массива
Предикат inrange(b,i) определяет:
(1) множество не допустимых значений индекса
(2) количество допустимых значений индекса
(3) множество допустимых значений индекса
(4) количество не допустимых значений индекса
Функция f:X*->Y называется индуктивной, если f(w o x) можно вычислить, зная:
(1) f(w)
(2) Y
(3) o
(4) x
В качестве примера использования метода замены константы переменной можно рассматривать:
(1) простую задачу суммирования элементов массива
(2) простую задачу вычитания массивов
(3) задачу деления элементов массива
(4) задачу умножения элементов массива
При написании программы, определяющей количество вхождений образца abcd в последовательность символов, функция F3 - это::
(1) дидуктивное расширение f
(2) индуктивное расширение f
(3) абдуктивное расширение f
(4) простое расширение f
В объектно-ориентированном программировании объекты (данные) могут активно взаимодействовать друг с другом с помощью:
(1) механизма вызова методов
(2) механизма передачи сообщений
(3) механизма передачи сигналов
(4) механизма вызова функций
Любая целочисленная функция h:M->{0..n-1} называется:
(1) стек-функцией
(2) хеш-функцией
(3) блок-функцией
(4) бит-функцией
Графический примитив setColor позволяет:
(1) установить цвет, которым будут изображаться выводимые объекты
(2) изобразить заполненный овал
(3) изобразить отрезок прямой линии
(4) изобразить границу прямоугольника
(5) изобразить границу овала
(6) изобразить заполненный прямоугольник
Какой метод позволяет преобразовать символ в соответствующее ему целое число:
(1) int2char
(2) int_char
(3) char_int
(4) chartoint
(5) char2int
(6) inttochar
Для построения изображения куба достаточно выполнения команды:
(1) make
(2) make cube
(3) gcc
(4) gcc cube
Дизъюнкция истинна, если:
(1) истинен хотя бы один из ее аргументов
(2) истины все ее аргументы
(3) не истины все ее аргументы
Оператор << языка Java имеет следующий приоритет:
(1) 6
(2) 5
(3) 4
(4) 3
(5) 2
(6) 1
Результат выполнения операций деления и деления по модулю для целочисленных операндов является:
(1) числом с плавающей точкой
(2) дробью
(3) целым числом
(4) комплексным числом
При написании программы, вводящей последовательность целых чисел, и печатающую количество ее максимальных элементов имеются следующие ограничения:
(1) не разрешается использовать массив для хранения элементов последовательности
(2) после ввода каждого очередного элемента программа обязана в принципе уметь напечатать ту характеристику последовательности, вычислению которой она посвящена
(3) программа должна уметь работать со сколь угодно длинными последовательностями
(4) программа не должна уметь работать со сколь угодно длинными последовательностями
Для того чтобы задать все основные конструкции выбора языка Java, достаточно дать определение только одной из них, — конструкции:
(1) "(e) S1; else S2;"
(2) "if (e) ...; else S2;"
(3) "if (e) S1; else ...;"
(4) "if (e) S1; else S2;"
(5) "if e...; else S2;"
Простым примером, иллюстрирующим схему вычисления индуктивной функции, является задача нахождения значения многочлена:
(1) заданного количеством его коэффициентов
(2) заданного областью определения корней его коэффициентов
(3) заданного последовательностью его коэффициентов
(4) заданного блоком его коэффициентов
Данная программа:public class Sqrt3 { public static void main(String[] args) throws Exception { int a, b, n; n = Xterm.inputInt("n -> "); a = 0; b = n+1; while (a+1 != b) { int c = (a+b)/2; if (c*c <= n) a = c; else b = c; } Xterm.println("sqrt(" + n + ") = " + a); } }находит приближенное значение квадратного корня:
(1) из заданного неотрицательного целого числа b
(2) из заданного неотрицательного целого числа a
(3) из заданного отрицательного целого числа n
(4) из заданного неотрицательного целого числа n
(5) из заданного отрицательного целого числа a
(6) из заданного отрицательного целого числа b
В данной программе:import java.io.*; public class ABCDSeq { public static void main(String[] args) { DataInputStream in = new DataInputStream(System.in); int f = 0, n = 0; try { while (true) { char x = (char)in.readByte(); if (x=='\n') continue; if (x=='d' && n==3) { f += 1; n = 0; } else if (x=='c' && n==2) { n = 3; } else if (x=='b' && n==1) { n = 2; } else if (x=='a') { n = 1; } else{ n = 0; } } } catch(Exception e) { Xterm.println("f = " + f); } } }используется метод:
(1) "readByte"
(2) "readsymb"
(3) "readchar"
(4) "Byte"
Для выхода из интерпретатора hugs надо использовать команду:
(1) :q
(2) :quit
(3) :exit
(4) :e
(5) :close
(6) :c
Определение множества методов, имеющих одинаковое имя, но разные списки аргументов - это:
(1) перезагрузка методов
(2) объявление методов
(3) определение методов
(4) перегрузка методов
(5) инициализация методов
Функция sin доступна программам на языке Java, как метод:
(1) Math.sin
(2) Math.cos
(3) Math.cs
(4) Math.sn
(5) Math.PI
(6) Math.tg
Данная программа:public class CalcTest { public static void main(String[] args) throws Exception { Calc c = new Calc(); while (true) c.compile(Xterm.inputChars("Введите формулу -> ")); } }является:
(1) тестом для интерпретатора формул
(2) тестом для стекового компилятора формул
(3) Makefile для стекового компилятора и интерпретатора формул
(4) Makefile для рекурсивного компилятора формул
(5) тестом для рекурсивного компилятора формул
(6) интерпретатором формул
Хорошей идеей является попытка использования их для проекций ребер и граней:
(1) ограниченных прямоугольников
(2) ограничивающих прямоугольников
(3) ограниченных многоугольников
(4) ограничивающих многоугольников
Общая форма записи тернарного оператора условия ?: имеет следующий вид:
(1) выражение1 ? выражение2 : выражение3
(2) выражение1 выражение2 : выражение3
(3) выражение1 ? выражение2 = выражение3
(4) выражение1 ? выражение2 != выражение3
(5) выражение1 | выражение2 : выражение3
(6) выражение1 : выражение2 ? выражение3
Оператор ?: языка Java имеет следующий приоритет:
(1) 12
(2) 10
(3) 8
(4) 6
(5) 4
(6) 2
Какой пакет дает возможность программисту работать с целыми и вещественными числами произвольной длины и точности:
(1) jv.math
(2) math.java
(3) math.jv
(4) java.math
(5) int.java
(6) intdb.java
Фраза, инвертирование которой не изменяет ее называется:
(1) рекурсия
(2) итерация
(3) палиндром
(4) монодром
(5) полидром
Для определения слабейшего предусловия wp("while(e)S;",R) потребуются:
(1) вспомогательные определения
(2) рекурсии
(3) итерации
(4) конкатенации
При использовании схемы вычисления инвариантной функции необходимо указать:
(1) множества X,Y,Xp
(2) функцию F
(3) преобразование T
(4) определение S
Данная программа:public class Arr3 { public static void main(String[] args){ int a[] = { 1, 2, 4, 8,16,32,64,128}; int b[] = {10,12,14,16,18,20,22, 24}; int c[] = { 9,12,13,16,17,20,21, 24}; int i = 0, j = 0, k = 0; while (true) { if (a[i] < b[j]) { i++; continue; } if (b[j] < c[k]) { j++; continue; } if (c[k] < a[i]) { k++; continue; } Xterm.println("Минимальное общее число=" + a[i]); return; } } }реализует алгоритм нахождения минимальное число, содержащееся в каждом из трех упорядоченных:
(1) по возрастанию массивов целых чисел
(2) по убыванию массивов целых чисел
(3) по возрастанию массивов вещественных чисел
(4) по убыванию массивов вещественных чисел
какие операторы необходимы для вызова метода "readByte":
(1) "new DataInputStream(System.in)"
(2) "import java.io"
(3) "import java."
(4) "import java.io.*"
(5) "DataInputStream in = new DataInputStream(System.in)"
(6) "DataInputStream in"