|
|
Ассемблер
Адрес команды, которая будет выполняться процессором, содержится в регистрах
|
cs:ip
|
В реальном режиме работы процессора стек не превышает размер
|
64 Кб
|
В результате какой команды регистр al будет равен нулю, если до выполнения al = 240
|
add al, 10h
|
В результате какой команды регистр al будет равен нулю, если до выполнения al = 240
|
sub al, 0f0h
|
Вершина стека определяется регистром
|
sp
|
Значение каких реггистров меняется при выполнении команды push ax
|
sp, ip
|
Значение каких регистров не меняется при выполнении команды popa
|
ss, cs
|
К регистрам общего назначения относятся
|
si, di, bp
|
К сегментным регистрам относятся
|
ds, es, cs
|
Какой командой в порт ввода-вывода 42h можно записать содержимое аккумулятора
|
out 42h, al
|
Какой командой в регистр ax можно загрузить смещение переменной msg db ? относительно сегмента данных
|
mov ax, offset msg
|
Какой командой в регистр ax можно загрузить смещение переменной x dw ? относительно сегмента данных
|
lea ax, x
|
Какой командой выполняется запись в вершину стека
|
push ax
|
Какой командой выполняется запись значения из вершины стека в регистр bx
|
pop bx
|
Какой командой можно прочитать содержимое порта ввода-вывода 61h
|
in al, 61h
|
Команда adc <ОП1>,<ОП2>
|
Увеличивает содержимое операнда ОП1, на значение операнда ОП2, учитывая перенос единицы из старшего разряда
|
Команда add <ОП1>,<ОП2>
|
Увеличивает содержимое операнда ОП1, на значение операнда ОП2
|
Команда dec <ОП>
|
Уменьшает содержимое операнда ОП, на единицу
|
Команда div <ОП>
|
Делит без знаковое содержимое регистра данных и аккумулятора на содержимое операнда ОП и результат помещает в регистр-аккумулятор
|
Команда div bx выполняет действие
|
ax = dx:ax / bx, остаток dx
|
Команда div cl выполняет действие
|
al = ax / cl, остаток ah
|
Команда idiv <ОП>
|
Делит знаковое содержимое регистра данных и аккумулятора на содержимое операнда ОП и результат помещает в регистр-аккумулятор
|
Команда imul <ОП>
|
Умножает знаковое содержимое регистра-аккумулятор на содержимое операнда ОП и результат помещает в регистр данных и аккумулятор
|
Команда inc <ОП>
|
Увеличивает содержимое операнда ОП, на единицу
|
Команда lodsb
|
копирует содержимое байта по адресу ds:si, в регистр-аккумулятор, а содержимое регистра cx уменьшает на единицу
|
Команда mov <ОП1>,<ОП2>
|
Изменяет содержимое операнда ОП1, на значение операнда ОП2
|
Команда movsb
|
копирует содержимое байта по адресу ds:si, в байт по адресу es:di, а содержимое регистра cx уменьшает на единицу
|
Команда mul <ОП>
|
Умножает без знаковое содержимое регистра-аккумулятор на содержимое операнда ОП и результат помещает в регистр данных и аккумулятор
|
Команда mul bx выполняет действие
|
dx:ax = ax * bx
|
Команда mul cl выполняет действие
|
ax = al * cl
|
Команда sbb <ОП1>,<ОП2>
|
Уменьшает содержимое операнда ОП1, на значение операнда ОП2, учитывая значение флага cf
|
Команда stosb
|
копирует содержимое регистрa-аккумулятор в байта по адресу ds:si es:di, а содержимое регистра cx уменьшает на единицу
|
Команда sub <ОП1>,<ОП2>
|
Уменьшает содержимое операнда ОП1, на значение операнда ОП2
|
Команда xchg <ОП1>,<ОП2>
|
Меняет местами содержимое операндов ОП1 и ОП2
|
По команде pusha в стек записывается регистры
|
ax, cx, dx, bx, sp, bp, si, di
|
По команде pushf в стек записывается
|
регистр флагов
|
Порт ввода-вывода это
|
8-разрядный аппаратный регистр, имеющий определенный адрес в пространстве ввода-вывода
|
Сегмент стека задается регистром
|
ss
|
Стек – это
|
область памяти, специально выделяемая для временного хранения данных программы
|
Стек переполнится если
|
Содержимое регистра sp, перед командой push, равно 0000h
|
Строка data segment para public 'data' определяет сегмент
|
который начинается по адресу кратному 16
|
Строка data segment word private 'data' определяет сегмент
|
без возможности объединения с другими сегментами c именем data
|
Укажите директиву резервирования в памяти двух байт
|
dw
|
Укажите директиву резервирования в памяти одного байта
|
db
|
Укажите директиву резервирования в памяти четырех байт
|
dd
|
Укажите команду перехода на метку m1, если перед этим была выполнена команда cmp al, bl со значениями регистров al = 0ah, bl = 10
|
je m1
|
Укажите команду перехода на метку m1, если перед этим была выполнена команда cmp al, bl со значениями регистров al = 0feh, bl = 254
|
jz m1
|
Укажите команду перехода на метку m1, если перед этим была выполнена команда cmp al, bl со значениями регистров al = 0ah, bl = 10h
|
jne m1
|
Укажите команду с абсолютной прямой адресацией операнда
|
mov ax, word ptr [0056]
|
Укажите команду с косвенной базовой адресацией операнда
|
mov ax, [bx]
|
Укажите команду с косвенной базовой адресацией операнда со смещением
|
mov ax, [dx+3h]
|
Укажите команду с косвенной базовой индексной адресацией операнда
|
mov ax, [si][di]
|
Укажите команду с относительной прямой адресацией операнда
|
jc n1
|
Укажите команду, записывающую значение в сегмент стека
|
mov [bp], bx
|
Укажите команду, которая даст верный результат, если до выполнения al = 10101010b
|
add al, 0fh
|
Укажите команду, которая даст верный результат, если до выполнения al = 10101010b
|
sub al, 0fh
|
Укажите команду, которая даст неверный результат, если до выполнения al = 0f0h
|
add al, 10h
|
Укажите команду, которая даст неверный результат, если до выполнения al = 0f0h
|
sub al, 90h
|
Укажите команду, которая даст отрицательный результат, если до выполнения al = 7fh
|
inc al
|
Укажите команду, которая даст положительный результат, если до выполнения al = 8fh
|
sub al, 7fh
|
Укажите команду, которая делит числа без знака
|
div <ОП>
|
Укажите команду, которая делит числа со знаком
|
idiv <ОП>
|
Укажите команду, которая изменяет содержимое операнда ОП1, на значение операнда ОП2
|
mov <ОП1>,<ОП2>
|
Укажите команду, которая меняет местами содержимое операндов ОП1 и ОП2
|
xchg <ОП1>,<ОП2>
|
Укажите команду, которая при следующих значениях регистров вызовет нулевое прерывание, ax = 7a9fh, bx = 9feah, cx = 1295h, dx = 54a8h
|
div ch
|
Укажите команду, которая при следующих значениях регистров вызовет нулевое прерывание, ax = 123h, bx = 234h, cx = 345h, dx = 456h
|
idiv bh
|
Укажите команду, которая увеличивает содержимое операнда ОП на единицу
|
inc <ОП>
|
Укажите команду, которая увеличивает содержимое операнда ОП1, на значение операнда ОП2
|
add <ОП1>,<ОП2>
|
Укажите команду, которая увеличивает содержимое операнда ОП1, на значение операнда ОП2, учитывая перенос единицы из старшего разряда
|
adc <ОП1>,<ОП2>
|
Укажите команду, которая уменьшает содержимое операнда ОП на единицу
|
dec <ОП>
|
Укажите команду, которая уменьшает содержимое операнда ОП1, на значение операнда ОП2
|
sub <ОП1>,<ОП2>
|
Укажите команду, которая уменьшает содержимое операнда ОП1, на значение операнда ОП 2, учитывая значение флага cf
|
sbb <ОП1>,<ОП2>
|
Укажите команду, которая умножает числа без знака
|
mul <ОП>
|
Укажите команду, которая умножает числа со знаком
|
imul <ОП>
|
Укажите команды линейного сдвига
|
shl, sal
|
Укажите команды преобразования типов
|
cbw, cwd
|
Укажите команды циклического сдвига
|
rol, ror
|
Укажите модель памяти предполагающую в программе несколько сегментов данных и несколько сегментов кода
|
large
|
Укажите модель памяти предполагающую в программе несколько сегментов данных и один сегмент кода
|
compact
|
Укажите модель памяти предполагающую в программе один сегмент
|
tiny
|
Укажите модель памяти предполагающую в программе один сегмент данных и один сегмент кода
|
small
|
Укажите модель памяти предполагающую в программе один сегмент данных и несколько сегментов кода
|
medium
|
Укажите неправильную команду
|
div 5
|
Укажите неправильную команду
|
in ah, al
|
Укажите неправильную команду
|
mov [bx], 0
|
Укажите неправильную команду
|
mov cs, ax
|
Укажите неправильную команду
|
mov ds, @data
|
Укажите неправильную команду
|
mov es, ds
|
Укажите неправильную команду
|
mov si, al
|
Укажите неправильную команду
|
mov sx, mx
|
Укажите неправильную команду
|
mul 5
|
Укажите неправильную команду
|
mul 5*6
|
Укажите неправильную команду
|
xchg cx, @data
|
Укажите неправильную команду
|
xchg sx, mx
|
Укажите строку с директивой
|
model tiny
|
Укажите флаг знака
|
sf
|
Укажите флаг нуля
|
zf
|
Укажите флаг переноса
|
cf
|
Укажите флаг переполнения
|
of
|
Базы данных
Базы данных – это
|
совокупность связанных данных конкретной предметной области, организованных по определенным правилам, предусматривающим общие принципы описания, хранения и манипулирования данными, независимо от прикладных программ
|
В базе данных имеется единственная таблица Book с первичным ключом, созданном на столбце ID. К чему приведет выполнение выражения DELETE FROM Book?
|
Очистка таблицы
|
В базе данных имеется таблица Employees, содержащая столбец AutoNum (строковый тип данных - гос.номер автомобиля сотрудника). В столбце AutoNum содержатся значения вида ‘A338МВ38’ Вы хотите найти сотрудника, у которого две первые цифры номера (т.е 2-3 симв
|
… where AutoNum Like ‘<шаблон>’ _- одиночный символ, % - один и более символов
|
В базе данных имеется таблица Employees, содержащая столбец Commission (процент комиссии за заключение договора). Только некоторые сотрудники получают комиссию, у остальных в этом поле содержится значение NULL. Какое условие нужно указать в запросе SELECT,
|
Where Commision is not null
|
В некоторой таблице есть колонка EX_COL. Записи таблицы для этой колонки содержат значения { 100, 200, 300, NULL }. Каким будет результат функции AVG(EX_COL)?
|
200
|
В таблице category поле id имеет тип integer. Какие из перечисленных ниже запросов вернут такой же результат, как и этот запрос: SELECT * FROM category WHERE id BETWEEN 2 AND 4 1) SELECT * FROM category WHERE id IN (2,3,4) 2) SELECT * FROM category WHERE
|
1
|
В чем состоит особенность поля "счетчик" в MS Access или поля типа IDENTITY в MS SQL Server?
|
– В одной таблице допустимо существование только одного поля со свойством IDENTITY
– Поле со свойством IDENTITY нельзя редактировать. Они имеет свойство "только для чтения".
– Значение полю со свойством IDENTITY присваивается автоматически в момент создания новой записи (Новое значение - это последнее использованное значение плюс некоторая фиксированная величина).
В связи с такими особенностями полей со свойством IDENTITY такие поля часто используют в качестве первичных ключей
|
Выберите верный синтаксис DELETE выражений.
|
Синтаксис: DELETE FROM таблица [WHERE предикат]
|
Дана пустая таблица publisher с колонками id и name. На id стоит автоинкремент, а name имеет тип varchar(40). Какой из следующих запросов отработает некорректно:
|
Автоинкремент – превращает поле в поле с идентификаторами, вводить можно только цифры, в name – только текст не более 40 символов
|
Дана пустая таблица, созданная с помощью выражения: create table simple_tab (col1 char[10] unique); Какой из перечисленных запросов не выполнится:
|
Unique – запрещает дубликаты в данном списке полей
|
Имеется таблица Book, в которой есть столбец Author. Ниже приведен запрос на языке SQL. Выберите из приведенного списка ответ, наиболее точно описывающий результат выполнения запроса. SELECT Author As A, 'Список авторов' As D FROM Book
|
В первом столбце, озаглавленном «А», – авторы, во втором столбце, озаглавленном «D», – слова «Список авторов»
|
Имеется таблица Book, содержащая среди прочих столбцы Pub_Year (год издания книги) и Publisher (издательство, в котором книга вышла). Необходимо увеличить на единицу год издания всех книг, выпущеных в издательстве «Мысль». С помощью какого запроса или
|
Update Book Set Pub_Year=Pub_Year+1 where Publicsher=’Мысль’
|
Инструкция языка SQL - ORDER BY определяет:
|
упорядочивание вывода по возрастанию или по убыванию
|
Какая из перечисленных команд не входит в подмножество DML языка SQL
|
Входят: SELECT, INSERT, UPDATE, DELETE
|
Какая из перечисленных функций позволяет удалить все пробелы справа?
|
Rtrim()
|
Какая из приведенных операций не является основной?
|
основные операции над отношениями: объединение, пересечение, разность, расширенное декартово произведение отношений, а также специальные операции над отношениями: выборка, проекция и соединение.
|
Какие из перечисленных ниже подмножеств содержит SQL:
|
Ddl, dml, dcl
|
Какие из представленных функций являются строковыми функциями SQL:
|
ascii(), char(), left(,), right(,), charindex(,[,]), patindex(,), len(), substring(,,), reverse(), replace(,,), stuff(,,,), str(,[[,]]), ltrim(), rtrim(), lower(), upper()
|
Каким свойством из перечисленных не обладает иерархическая модель данных?
|
Свойства:
- Существует корень
- Узел содержит атрибуты
- Исходный и зависимый узлы находятся в отношении «непосредственный предок и потомок»
- Потомок соединен единственной связью с предком
- Предок может иметь несколько потомков
- Доступ к данным производится через предка
- Может существовать множество экземпляров узла
- При удалении узла удаляется все его поддерево
|
Какими запросами можно получить все поля и записи таблицы Employers (возможно несколько вариантов)
|
SELECT * FROM Employers
|
Каково функциональное назначение индексов?
|
Позволяет выполнить ускоренный доступ к строкам
|
Какого типа операции соединения не существует?
|
Виды соединений: thetajoin, equijoin, naturaljoin, outerjoin (left, right, full), semijoin
|
Какое из высказываний об операторе EXISTS ложно?
|
Истинно:
- EXISTS не может принимать значение «НЕИЗВЕСТНО», только true, lie
- Подзапрос в операторе EXISTS может возвращать любое количество столбцов
- Часто EXISTS применяется с оператором NOT
- Часто запрос с EXISTS можно заменить запросом с оператором IN
- EXISTS нельзя использовать с подзапросами, возвращающими значения агрегатных функций.
|
Какое из ключевых слов запроса на выборку накладывает ограничение на группы?
|
having
|
Какое из ключевых слов запроса позволяет определить пустые наборы?
|
Full, left, right
|
Какое из приведенных высказываний о свойствах отношений ложно?
|
Свойства отношений:
- Нормализованные отношения представляются в виде табличной структуры
- Каждый кортеж отношения является уникальным, т.е. в отношении не может быть повторяющихся строк
- Упорядоченность кортежей теоретически несущественна
- Количество атрибутов и их порядок в отношении должно быть фиксированным (т.е. кортежи должны иметь одинаковую длину и формат)
|
Какое из следующих ключевых слов используется в конструкции order by ?
|
Синтаксис: ORDER BY поле [{ASC|DESC}]
|
Какое ключевое слово используется для изменения объектов базы данных?
|
ALTER
|
Какое(ие) из перечисленных слов связывает первичные и внешние ключи?
|
REFERENCES
|
Какой из вариантов не является функцией СУБД?
|
Является: поиск информации в БД; выполнение несложных расчетов; вывод отчетов на печать; редактирование БД
|
Какой из перечисленных компонентов не входит в состав структурной части реляционной модели?
|
Входят: Домен Отношение Атрибут Кортеж Потенциальный ключ Первичный ключ
|
Какой из перечисленных операторов позволяет объединить результаты нескольких запросов?
|
union
|
Ключами поиска в системах управления базами данных (СУБД) называются:
|
Поле (набор полей), который однозначно идентифицирует запись, что позволяет быстро ее найти
|
Ключевое слово LIKE может быть использовано только для таких типов данных:
|
char, varchar
|
Наиболее распространенными на практике являются
|
SELECT-запросы
|
Необходимо вычислить средний объем продаж (advance) книг и годовой доход (sales) от продажи книг по всем категориям (type) из таблицы titles. Какой из перечисленных фрагментов кода позволит решить поставленную задачу?
|
Select avg(advance), sum(sales) from titles group by type
|
Необходимо отобрать все записи из таблицы банков (banks) и те записи из таблицы договоров (contracts), значения id которых равны значениям id_contract в таблице банков. Какой из перечисленных фрагментов кода позволит решить поставленную задачу?
|
Select * from banks b join contracts c on b.id_contract=c.id
|
Необходимо получить список фамилий из таблицы authors, начинающихся на D, заканчивающихся на k, и содержащих 1 букву в середине. Какой из перечисленных фрагментов кода позволит решить поставленную задачу?
|
…where name like ‘D_k’
|
Необходимо создать составной индекс name для таблицы authors по полям f_name и s_name. Какой из перечисленных фрагментов кода позволит решить поставленную задачу?
|
CREATE INDEX Name ON authors(f_name, s_name)
|
Необходимо создать таблицу table1, состоящую из двух полей: field1 и field2 с данными целого типа. Полю следует field1 назначить первичный ключ, полю field2 - вторичный ключ и связать с полем field1 таблицы table2. Какой из перечисленных фрагментов кода п
|
Create table table1(field1 int primary key, field2 int, CONSTRAINT TB_field FOREIGN KEY(field2) REFERENCES table(field1))
|
Порядок строк в результатах SQL-запроса
|
произволен
|
Предположим, что создана таблица persons с колонками id, name, age. Какой запрос найдет средний возраст всех людей с возрастом не менее 18-ти лет?
|
SELECT AVG(age) from persons where age>=18
|
С помощью какого update-запроса можно обновить значения более чем одной колонки?
|
Синтаксис: UPDATE таблица
SET поле1 = значение1
[, поле2 = значение2, …,
полеN = значениеN]
[WHERE предикат]
|
С помощью какого запроса можно поместить значение 'Perez' в поле LastName таблицы Persons?
|
INSERT
|
С помощью какого запроса можно удалить все записи из таблицы A?
|
DELETE FROM A
|
Содержит ли какую-либо информацию таблица, в которой нет ни одной записи?
|
Только о структуре данных (имена и типы полей)
|
Содержит ли какую-либо информацию таблица, в которой нет полей?
|
нет
|
Таблицы в базах данных предназначены для:
|
для хранения данных базы
|
Укажите, какой из вариантов приведенных запросов позволяет получить декартово произведение двух таблиц A и B (в обеих таблицах имеется поле ID и др)?
|
Запрос с FULL JOIN
|
Чему эквивалентен следующий запрос: SELECT * FROM product WHERE price BETWEEN 100 AND 200;
|
SELECT * FROM product WHERE price >= 100 AND price <= 200
|
Что из перечисленного не входит в функции администратора БД?
|
Входит: 1. Координация проектирования, реализации и ведения БД; 2. Обслуживание пользователей БД; 3. Определение структуры данных и правила доступа; 4. Оценка перспективы и формирование требований, исходя из особенностей ПО
|
Что из перечисленного не обязательно для приведения отношений к нормальной форме Бойса-Кодда?
|
НФ Бойс-Кодда: Каждая таблица (атрибут) должна быть обладать: Уникальность означает, что не существует двух кортежей данного отношения, в которых значения этого подмножества атрибутов совпадают (равны).
Минимальность (несократимость) означает, что в составе потенциального ключа отсутствует меньшее подмножество атрибутов, удовлетворяющее условию уникальности. Иными словами, если из потенциального ключа убрать любой атрибут, он утратит свойство уникальности.
|
Что из перечисленного НЕ свойственно представлениям?
|
- Представление – это виртуальная таблица, определяемая запросом, содержащим оператор SELECT.
- Эта виртуальная таблица состоит из одной или нескольких реальных таблиц
- Для пользователя работа с представлением осуществляется так же, как и с обычной таблицей.
- К представлению можно применять операции SELECT, INSERT, UPDATE, DELETE
Типы представлений:
- Подмножество полей таблицы
- Подмножество строк таблицы
- Связывание двух и более таблиц
- Агрегированная информация
Преимущества представлений:
- Представления содержат самые свежие данные
- Представление может иметь уровень безопасности, отличный от его базовой таблицы.
- Представление открывается с уровнем безопасности пользователя, его создавшего
- Ограничения по количеству полей: не более 1024 полей
Ограничение БД:
- представление можно создать только к текущей БД
- Ограничение безопасности: создатель представления должен иметь доступ ко всем полям, входящим в представление
- Правила целостности данных: любые модификации представлений не должны нарушать имеющихся правил целостности данных
- Ограничения на количество уровней вложенности представлений: до 32 уровней
Ограничение оператора SELECT: в команде SELECT нельзя использовать сортировку данных ORDER BY
|
ПОПО
Ветвящиеся алгоритмы характеризуются
|
непустым множеством вершин ветвления и терминальных вершин, и при этом на графе не образуются контуры
|
Выберите показатели, за счет которых метод макрозамен дает выигрыш в производительности
|
стек, время копирования параметров, передачи управления функции
|
Какой из методов оптимизации является машинно-зависимым?
|
ответ со словом register
|
Какой метод можно использовать для поиска лучшего приближения к оптимальному результату в модели комплексной оптимизации
|
метод наименьших квадратов
|
Конечные алгоритмы характеризуются
|
непустым множеством терминальных вершин на графе и пустым множеством контуров
|
Критерием производительности конечных программных алгоритмов является
|
верхняя или нижняя граница времени поиска решения
|
Критерием производительности склонных к зацикливанию программных алгоритмов является
|
время однократного зацикливания и время поиска решения
|
Критерием производительности циклящихся программных алгоритмов является
|
верхняя или нижняя граница времени однократного зацикливания
|
Критерий верхняя граница времени поиска решения используется в задаче
|
минимизации времени поиска решения конечного ветвящегося алгоритма (Пессимист)
|
Критерий нижняя граница времени поиска решения используется в задаче
|
минимизации времени поиска решения конечного ветвящегося алгоритма (Оптимист)
|
Линейные алгоритмы характеризуются
|
непустым множеством терминальных вершин на графе и пустым множеством контуров и вершин ветвления
|
Ограничением в задаче минимизации верхней границы времени поиска решения является
|
верхняя граница объема доступной памяти
|
Ограничением в задаче минимизации верхней границы используемого объема оперативной памяти является
|
верхняя граница числа обращений к внешним носителям
|
Ограничением в задаче минимизации нижней границы времени поиска решения является
|
верхняя граница объема доступной памяти
|
Ограничением в задаче минимизации нижней границы используемого объема оперативной памяти является
|
верхняя граница числа обращений к внешним носителям
|
Понятие "Верхняя граница времени решения" не используется в модели
|
Оптимист
|
Порядок расчета потенциала вершин нечетных ярусов (соотвествующих вариантам подпрограмм) при поиске цены игры, если стратегия оптимизации - "ПЕССИМИСТ"
|
выбирается максимум из сумм потенциалов вершин следующего яруса и потенциалов, которыми эта подпрограмма заканчивается в этих вершинах
|
Порядок расчета потенциала вершин нечетных ярусов (соотвествующих вариантам подпрограмм) при поиске цены игры, если стратегия оптимизации - "Оптимист"
|
выбирается минимум из сумм потенциалов вершин следующего яруса и потенциалов, которыми эта подпрограмма заканчивается в эти вершинах
|
Порядок расчета потенциала вершин четных ярусов (соотвествующих вариантам подпрограмм) при поиске цены игры, если стратегия оптимизации - "ПЕССИМИСТ"
|
минимум из потенциалов вершин предыдущего нечетного яруса
|
Порядок расчета потенциала вершин четных ярусов (соотвествующих вариантам подпрограмм) при поиске цены игры, если стратегия оптимизации - "Оптимист"
|
минимум из потенциалов вершин предыдущего нечетного яруса
|
Работа программы в режиме CHAIN
|
каждый модуль отработав, освобождает выделенную ему для работы ОП. В текущий момент работы программы в памяти может находится лишь один из последовательно загружаемых модулей
|
Работа программы в режиме OVERLAY
|
головной модуль программы все время находится в ОП, оставшаяся память распределеяется последовательно как в режиме CHAIN
|
Склонные к зацикливанию алгоритмы характеризуются
|
непустым множеством контуров и непустым множеством терминальных вершин на графе
|
Стратегии Оптимист соответствует
|
минимизация нижней границы времени счета либо объема используемой ОП
|
Стратегии Пессимист соответствует
|
минимизация верхней границы времени счета либо объема используемой ОП
|
Целевая функция модели выбора оптимальной стратегии кэширования при работе с файлами минимизирует
|
суммарное число обращений к внешним носителям
|
Цель оптимального кэширования файлов
|
минимизация числа обращений к внешним носителям
|
Циклящиеся алгоритмы характеризуются
|
непустым множеством контуров и отсутствием терминальных вершин
|
Число обращений к файлу равно
|
Wi/Ui*Ni гдеWi – размер i-го массива, Ui – оптимальный размер кэш-блоков, Ni – число обращений к i-у массиву
|
Программирование на ЯВУ
В каких строках данной программы содержатся ошибки компиляции: #include <iostream> using namespace std; int main() { const int size = 20;// 1 char name[size]; char dessert[size]; cout << "Enter your name "; cin >> name; // 2
|
char dessert[size];
|
В какой строке данного фрагмента кода допущена ошибка: int a = 3; int i; // 2 for (i = 0; i < 3; i++) { // 3 a++; // 4 } ()
|
ошибок нет
|
В каком из условных операторов на языке Pascal допущена синтаксическая ошибка?
|
|
В каком из условных операторов на языке С++ допущена синтаксическая ошибка?
|
|
В работе с какими типами файлов могут использоваться процедуры ReadLn и WriteLn?
|
с текстовыми
|
Выберите правильные утверждения о конструкторе класса в языке С++. 1) Конструктор может иметь любое имя. 2) Конструктор имеет то же имя, что и класс. 3) Имя конструктора начинается с символа ~. 4) Конструктор не возвращает значения 5) Конструктор объявляет
|
2, 4
|
Для создания в динамической памяти указателя, не связанного с конкретным типом данных, используется процедура:
|
getmem
|
Для создания связанного списка в динамической памяти используется тип данных
|
запись
|
Если в списке элементов инициализации массива из элементов простых типов (POD типов), элементов меньше, чем объявленный размер массива, например: int v[5] = {1, 2, 3}; То:
|
необъявленные элементы инициализируются нулями: v={1, 2, 3, 0, 0}
|
К процедурам для работы с динамическими переменными не относится () (В Паскале определены
|
относятся: new(указатель), dispose(указатель), getmem, freemem
стандартные функции для работы с указателями: addr( x) – тип результата pointer, возвращает адрес x (аналогично операции @), где x – имя переменной или подпрограммы; seg( x) – тип результата word, возвращает адрес сегмента для x; ofs( x) – тип результата word, возвращает смещение для x; ptr( seg, ofs) – тип результата pointer, по заданному сегменту и смещению формирует адрес типа pointer.
|
Как будет вычислено выражение: a+++b в языке С++?
|
=a+b, a=a+1; b=b
|
Как правильно объявить массив в C++?
|
синтаксис объявления (символы “[“ и “]” – обязательны): <тип>[<целочисленная константа>]<имя> или <тип>[<целочисленная константа>]<имя>={<знач1>, <знач2>, … } или <тип>[]<имя>={<знач1>, <знач2>, … }
|
Какая динамическая структура представляет собой совокупность линейно связанных однородных элементов с четко выраженным началом и концом, для которого разрешены следующие действия: добавление, вставка, удаление элементов, поиск и др?
|
линейные списки(одно-, двунаправленные/связанные)
|
Какая из перечисленных процедур не используется в работе с нетипизированными файлами в Delphi?
|
используются: BlockRead, BlockWrite, Seek, CloseFile, Reset, Rewrite, Rename, Truncate
|
Какая из процедур не работает с динамической областью памяти в языке Pascal?
|
работают: new, dispose, getmem, freemem
|
Какая процедура является обязательной при открытии файла в Delphi?
|
assignfile
|
Какие из операторов присваивания допустимы для описанных переменных (все массивы были инициализированы) ? type t_arr=array[1..100] of integer; var a:t_arr; b:t_arr; c,d:array[1..100] of integer; e:array[1..100] of real;
|
a:=b; c:=d; a[1]:=b[1]; a[1]:=c[1]; c[1]:=a[1]; c[1]:=d[1]; e[1]:=a[1]; e[1]:=c[1]
|
Какие элементы класса могут определяться в секции protected?
|
доступные классам-потомкам, а также методам самого класса
|
Каким будет значение переменной a в результате выполнения данного фрагмента кода на языке С++: int a = 5 > 6 ? 8 : 0;
|
0
|
Какими способами в C++ могут передаваться параметры в функцию? (
|
по значению (A a) – вызывается конструктор копий, а по завершении деструктор – и по ссылке (A& a)
|
Каково будет значение sum после выполнения цикла? vаr i, sum:singlе; begіn sum:=1; fоr i:=2 tо 10 dо sum:=sum+i; WrіtеLn(sum); end.
|
ошибка – переменная цикла должна быть перечисляемого типа
|
Какое высказывание НЕ справедливо для виртуальных методов
|
метод, замещаемый в родительском классе, должен объявляться как динамический (с директивой dynamic) или виртуальный (virtual). Встретив такое объявление, компилятор создаст две таблицы – DMT (Dynamic Method Table) и VMT и поместит в них адреса точек входа соответственно динамических и виртуальных методов. При каждом обращении к замещаемому методу компилятор вставляет код, позволяющий извлечь адрес точки входа в подпрограмму из той или иной таблицы. В классе-потомке замещающий метод объявляется с директивой override (перекрыть). Получив это указание, компилятор создаст код, который на этапе прогона программы поместит в родительскую таблицу точку входа метода класса-потомка, что позволит родителю выполнить нужное действие с помощью нового метода. Разница между динамическими и виртуальными методами состоит в том, что таблица динамических методов содержит адреса только тех методов, которые объявлены как dynamic в данном классе, в то время как таблица VMT содержит адреса виртуальных методов не только данного класса, но и всех его родителей. Значительно большая по размеру таблица VMT обеспечивает более быстрый поиск, в то время как при обращении к динамическому методу программа сначала просматривает таблицу DMT у объекта, затем – у его родительского класса и так далее, пока не будет найдена нужная точка входа
|
Какое из ниже перечисленных выражений НЕ может быть выражением-константой в языке Pascal? ()
|
синтаксис: const <имя>[:<тип>]=<знач>; знач – вычисляемое на стадии компиляции выражение
|
Какое из перечисленных высказываний неверно?
|
|
Какое из предложенных высказываний о диалоговых окнах в Delphi ложно?
|
|
Какое из предложенных высказываний об исключениях в Delphi ложно?
|
|
Какое из приведенных описаний свойств в Delphi НЕ допустимо?
|
синтаксис: property <имя>:<тип> read <метод|поле> |write<метод|поле>
|
Какое из следующих объявлений идентично объявлению MyClass = class(Tobject)?
|
MyClass = class
|
Какое из следующих описаний множеств приведет к ошибке?
|
множества описываются: Type MN = Set of T; Var M1,M2: NM; или Var M1,M2: Set of T; где T – тип компонент. В качестве элементов списка м.б. константы, переменные, выражения или тип диапазон того же базового типа. Например: [‘A’ . . ‘ B’, CHR(48+Digit)], [6, 8, 2, 7]. Элементы м.б. повторяющиеся
|
Какое из следующих описаний переменных на языке Pascal является ошибочным?
|
синтаксис: var <имя>[,<имя>…]:<тип>;
|
Какое свойство НЕ определено для компонента DataSource в Delphi?
|
active
|
Какой тип не относится к целочисленным типам языка C++?
|
целочисленные: int, char, wchar_t, bool, _int64
|
Какую динамическую структуру можно представить следующим объявлением? type PRec = ^TRec; TRec = record D: byte; Link:PRec; end;
|
стек, очередь, однонаправленный список
|
Какую динамическую структуру можно представить следующим объявлением? type PRec = ^TRec; TRec = record D: byte; Pred, Next:PRec; end;
|
стек, очередь, одно-, двунаправленный список, бинарное дерево
|
Над указателями могут быть определены операции:
|
:=,=,<>
|
Объединение в единое целое данных и алгоритмов обработки данных
|
инкапсуляция
|
Описан тип: type t_sеasоn = (Wіnter, Spring, Summer, Autumn); Что вернут функции pred(Summer) и succ(Autumn)?
|
Spring(1) и RunTimeError
|
Память для динамических объектов выделяется в процессе:
|
выполнения программы
|
Перечислите все правильные способы объявления константы в языке С++. 1) const int size; 2) define const size 5 3) const int size = 5; 4) #const size = 5;
|
3
|
Процедура, позволяющая вернуть в кучу участок памяти, занятый типизированным указателем:
|
dispose
|
Пусть дано следующее описание: var A,B,C:^integer. Какое присваивание является допустимым?
|
A:=B; A:=@B; A^:=B^
|
Пусть дано следующее описание: var A,B,C:^real; I:integer. Какое присваивание является допустимым?
|
A:=@I; A:=B; A:=@B; A^:=I;
|
Свойство объектов порождать своих потомков
|
наследование
|
Свойство родственных объектов решать схожие по смыслу проблемы разными способами
|
полиморфизм
|
Частный случай линейного односвязного списка, для которого разрешено только добавление элемента в конец и удаления элемента из начала
|
очередь
|
Частный случай линейного односвязного списка, для которого разрешено добавить или удалить элементы только с одного конца списка, который называется вершиной
|
стек
|
Чем отличаются две следующие сигнатуры процедур: procedure proc(X: Integer); procedure proc(var X: Integer);
|
1 – Х передается по значению, 2 – Х передается по ссылке
|
Чему будет равно значение переменной с в следующем коде: int a=4; int b=3; double c=a/b;
|
1
|
Что верно о следующем коде: int main(int argc, char* argv[]) { int a[3] = { 1, 2, 3 }; int b[2] = { 1, 2 }; a = b; return 0; }
|
a = b – неверно
|
Что выведет данная процедура Write(sizeof(s));, если s:string[5];?
|
6
|
Что выведет следующая программа: #include "stdio.h" int main() { int * var = new int(2); *var*=2; printf("%d", *var); return 0; }
|
4
|
Что выведет следующая программа: procedure proc(X: word); begin X:=1; end; var r: Integer; begin r:=2; proc(r); Writeln(r*r - 3); end.
|
1
|
Что выведет следующая программа? const a : Integer = Ord('5') - Ord('5'); var i : Integer; begin for i := 1 to 2 do a := a * 2 + 1; writeln(a); end.
|
3
|
Что выведет следующая программа? type A = class procedure w; end; B = class(A) procedure w; end; procedure A.w; begin Writeln('w from A'); end; procedure B.w; begin Writeln('w from B'); end; var abba : B; begin abb
|
'w from B'
|
Что выведет следующая программа? (Файлы a_u.pas и main.dpr лежат в одном каталоге) a_u.pas: unit a_u; interface type A = class private x,y : Integer; end; implementation end. main.dpr: {$APPTYPE CONSOLE} uses a_u in '
|
ошибка компиляции
|
Что выведет следующая программа? type A = class procedure w; end; B = class(A); procedure A.w; begin Writeln('w from A'); end; var abba : B; begin abba.w; end.
|
w from A
|
Что выведет следующий фрагмент кода: n:= 2; р:=@n; р^ := 1; Writeln('n=', n);
|
n=1
|
Что напечатает программа: #include <stdio.h> void ampersand( int n, int &a ); int main() { int n=5; int a=10; ampersand( n. a ); printf( “n=%d &a=%d\n”, n, a ); return 0; } void ampersand( int n, int &a ){ a -= 5; --
|
n=5 &a=5
|
Что напечатает следующая программа: var a: Array [1..6] of integer; begin Writeln(Low(a) + High(a)); end.
|
7
|
Что напечатает следующая программа? var a,i : Integer; begin a := 3; for i := 2 to 5 do begin case i of 1,3,5 : Inc(a); 2,4 : a := a + 2; end; writeln(a); end.
|
ошибка – begin после for не закрыт end-ом
|
Что произойдет в результате выполнения данного кода? table1.open; while not table1.eof do begin table1.fieldValues[‘field1’] := 25; table1.post; end;
|
ошибка – для полей должен быть разрешен режим редактирования
|
Что произойдет при вызове метода MyTest? type TForm1 = class(TForm) Label1 : TLabel; procedure MyTest; end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.MyTest; begin Label1.Caption := Caption; end;
|
Label1.Caption := Form1.Caption – по умолчанию “Form1”
|
Что произойдет при вызове процедуры Test? procedure Test; var a, b:string; begin a := ‘1’; b := ‘2’; ShowMessage(a+b); end;
|
окно с сообщением ‘12’
|
Методы оптимизации
Всегда ли оптимизационная задача содержит ограничения?
|
Нет. Задача может быть как с ограничениями( условная оптимизация) так и без ограничений(безусловная оптимизация)
|
Градиент – это:
|
вектор, направленный в сторону наискорейшего возрастания функции и равный по величине ее производной в этом направлении (Перпендикулярен линии уровня)
|
Если объем запасов в транспортной задаче равен 120, а объем потребностей - 100, то в задачу вводится:
|
Фиктивный потребитель
|
Задача Джонсона позволяет:
|
Минимизировать время обработки деталей на конвейерной линии, состоящей из последовательно расположенных машин Или же Минимизировать суммарное время простоя машин(станков)
|
Задача Джонсона - это задача:
|
оптимального упорядочивания. Задача поиска оптимальной последовательности обработки деталей на двух (или более) станках
С непрерывно меняющимися положительными переменными, с минимаксной целевой функцией
|
Задача линейного программирования – это:
|
Задача условной оптимизации, в которой ограничения и целевая функция линейны
|
Задача о назначениях - это задача:
|
поиска оптимального распределения N работ между N исполнителями (частный случай транспортной задачи, в которой количество пунктов производства и потребления равны, а объем потребления и производства в каждом пункте равен 1
|
Задача о назначениях позволяет:
|
Найти оптимальное назначение кандидатов на работы, при котором суммарные затраты на выполнение работ (или суммарное время выполнения работы) минимальны
|
Задача о ранце - это задача:
|
задача линейного программирования с булевыми переменными. задача о наилучшем выборе предметов из общего их количества таким образом, чтобы их суммарный вес (или габариты и т. п.) не превышал заданного, а их суммарная полезность, или иная общая оценка, была максимальной.
|
Знание конечного значения шага необходимо для того, чтобы:
|
Завершить работу алгоритма
|
Какая из стратегий метода ветвей и границ доставляет глобально-оптимальное решение оптимизационной задачи.
|
Фронтальный спуск? Полный перебор – не стратегия, а метод
|
Какой из перечисленных методов не является методом решения оптимизационных задач?
|
Существуют: графический, потенциалов, ветвей и границ, монте-карло, решеток, градиентные, Лагранжа
|
Количество занятых клеток в плане транспортной задачи, необходимое для применения метода потенциалов:
|
m + n – 1
|
Количество параметров в транспортной задаче:
|
равно произведению количества поставщиков на количество потребителей (m*n)
|
Количество фиктивных перевозок, вводимое в первичный план перевозок:
|
Необходимо ввести такое количество фиктивных перевозок, чтобы число занятых клеток стало m+n-1
|
Компонентами оптимизационной задачи являются:
|
Целевая функция(критерии), параметры(переменные), ограничения на функции или параметры
|
Линии уровня – это:
|
множество точек из области определения функции (линия, изолиния), в которых функция принимает одно и то же фиксированное значение
|
Линии уровня линейной функции…
|
Для линейной функции двух переменных линия уровня представляет собой прямую, перпендикулярную вектору с, который служит градиентом данной функции
|
Линии уровня линейной функции…
|
при параллельном смещении линии в одну сторону уровень только возрастает, а при смещении в другую сторону – только убывает
|
Метод градиентного спуска предполагает поиск градиента:
|
У функцииии, явл непрерывно диф-й, в области, задаваемой неравенствами
|
Метод градиентного спуска предполагает шаг, величина которого:
|
Конечна, постоянно уменьшается
|
Метод идеальной точки предполагает:
|
Наличие точки, имеющей экстремальные значения всех критериев в многомерном пространстве.
|
Метод лексикографического упорядочения предполагает:
|
Все критерии ранжируются по важности. Осуществляется выбор по самому важному. Если ряд альтернатив имеют равные значения по первому критерию, то далее осуществляется выбор среди этих алтернатив по второму по важности критерию. И так до тех пор, пока не останется одна альтернатива.
|
Метод, позволяющий оптимизировать первичный план перевозок в транспортной задаче:
|
Метод потенциалов
|
Многокритериальная многопараметрическая безусловная оптимизационная задача
|
Более одной целевой функции, более одной переменной, нет ограничений
|
Многокритериальная оптимизационная задача предполагает наличие:
|
нескольких целевых функций (критериев)
|
Множество Парето - это множество:
|
такое состояние системы, при котором значение каждого частного критерия, описывающего состояние системы, не может быть улучшено без ухудшения положения других элементов
|
Множество Парето является:
|
|
Модель задачи является закрытой, если:
|
суммарные потребности потребителей равны суммарным возможностям поставщиков
|
Может ли быть применен графический метод для решения задач нелинейного программирования.
|
Да. ЗНП удобно решать графически, когда функция и ограничения содержат две переменные
|
Объем перераспределяемого груза в транспортной задаче равен:
|
минимум m из всех элементов, помеченных знаком - , и выбираем одну ячейку где этот минимум достигается
|
Ограничения в задаче Джонсона связывают:
|
начало, время, конец обработки детали на станке
|
Ограничения в задаче о назначениях предполагают:
|
условие выполнение всех работ, условие загруженности всех рабочих
|
Ограничения в задаче о ранце связывают:
|
булевы переменные с весами предметов и общим ограничение на грузоподъемность
|
Ограничения в транспортной задаче предполагают:
|
общий объем спроса равен общему объему предложения
|
Опорный план - это:
|
любое ее допустимое, базисное решение.(которое удовлетворяет ограничениям)
|
Переменные в задаче о ранце:
|
Булевы (взят/невзят)
|
Решить оптимизационную задачу – значит:
|
Найти такие значение переменных, которые удовлетворяют ограничениям и доставляют наилучшие значения целевых функций
|
Транспортная задача - это задача:
|
задача линейного программирования о перевозках некоторого продукта из пунктов отправления в пункты назначения при минимальных затратах на перевозку.
|
Транспортная задача считается решенной, если:
|
Выполняется условие оптимальности для занятых (ui + vj = cij для xij > 0) и пустых (ui + vj < cij для xij = 0) клеток
|
Условие оптимальности для занятых клеток в транспортной задаче:
|
сумма оценок пунктов производства (ui) и потребления (vj), между которыми запланированы перевозки, равна затратам на транспортировку единицы продукта (Cij) между этими пунктами, т.е. ui + vj = cij для xij > 0 (для занятых клеток
|
Условие оптимальности для занятых клеток связывает потенциалы строк и столбцов плана в систему, содержащую:
|
m+n-1-уравнений, m+n – неизвестными переменными
|
Условие оптимальности для пустых клеток в транспортной задаче:
|
ui + vj < cij для xij = 0 (для свободных клеток)
|
Фиктивная перевозка - это перевозка:
|
перевозка с нулевой стоимостью
|
Функция Лагранжа - это функция,
|
составленная из: целевой функции и множителей лагранжа (составленных из ограничений)
|
Целевая функция в транспортной задаче определяется:
|
Суммарная стоимость плана перевозок стремиться к минимуму (F= sum(i,m)sum(j,n)cij*xij à min)
|
Целевая функция задачи о назначениях определяется:
|
суммарная цена(стоимость) всех назначений (выполнения назначенных работ) должна быть минимальна
|
Целевые функции многокритериальной оптимизационной задачи:
|
|
Целью транспортной задачи является:
|
Стоимость всего плана перевозок была минимальной, все потребители удовлетворены, все запасы товаров вывезены.
|
Чему равен градиент функции в точке экстремума.
|
ноль
|
|