- •Билет 1.
- •1. Инкапсуляция, наследование, полиморфизм. Классы, объекты и отношения между ними. Диаграммы логического уровня.
- •2. Симметричные блочные криптоалгоритмы. Сеть Фейстеля.
- •Билет 2
- •1. Объявление и реализация классов на языке Паскаль.
- •2. Интерфейс. Пользовательский интерфейс. Классификация пользовательских интерфейсов.
- •Билет 3.
- •1. Графы. Основные определения. Машинное представление графов в последовательной памяти и связанной памяти.
- •2. Общая схема симметричной криптосистемы. Алгоритм построения цепочек.
- •3. Написать процедуру, которая выполняет вставку компоненты по заданному ключу.
- •Билет 4.
- •1. Нормальный алгоритм Маркова.
- •2. Парадигмы интерфейсов.
- •Билет 5.
- •1. Понятие процесса. Состояние процессов. Алгоритмы планирования процессов.
- •2. Общие сведения об ассиметричных криптоалгоритмах. Понятие электронной цифровой подписи.
- •3. Вычислить факториал числа 8.
- •Билет 6.
- •1. Файловая системаFat.
- •2. Основные компоненты графических пользовательских интерфейсов.
- •3. Если элементы массивыD[1…5] равны соответственно 4, 1, 5, 3, 2, то значение выражениеD[d[3]]-d[d[5]] равно?
- •Билет 7
- •1. Структуры распределенных вычислительных систем(топология, физические и логические элементы сетей эвм)
- •2. Встроенные средства контроля доступа в современных ос.
- •3. Указать к какому классу относится каждый из перечисленныхIPадресов:
- •Билет 8
- •1.Трансляторы, компиляторы и интерпретаторы: определение, общая схема работы. Варианты взаимодействия блоков транслятора.
- •2. Эргономические требования, предъявляемые к дизайну пользовательских интерфейсов.
- •3. Указать к какому классу относится каждый из перечисленныхIPадресов:
- •Билет 9
- •1. Сети Петри. Моделирование процессов на основе сетей Петри.
- •2. Нормализация таблиц при проектировании баз данных. Нормальные формы (1нф, 2нф, 3нф, нфбк).
- •3. Составить программу, которая формирует очередь, добавляя в неё произвольное количество компонент.
- •Билет 10.
- •1. Понятие алгоритма. Интуитивное понятие алгоритма.
- •2. Функции субд.
- •Билет 11.
- •1. Структура данных типа стек. Логическая структура стека. Машинное представление стека и реализация операций.
- •2. Принципы и виды отладки программного средства. Автономная отладка программного средства. Комплексная отладка программного средства.
- •3. Дан массив типаwordразмерностьюn. Найти сумму всех элементов, не превышающих заданногоm, далее вывести на экран.
- •Билет 12.
- •1. Сети Петри. Моделирование процессов на основе сетей Петри.
- •2. Модели объектов проектирования .
- •Билет 13.
- •1. Концепции информационного моделирования. Создание моделей на языкеUml.
- •2. Модели систем управления данными: сетевая, иерархическая, реляционная модель.
- •Билет 14.
- •1. Принципы создания компонент в визуальных средах разработки.
- •2. Жизненный цикл программного обеспечения. Модели жизненного цикла по: каскадная, спиральная. Стадии, фазы работы жизненного цикла.
- •Билет 15.
- •1. Деревья. Основные определения. Логическое представление и изображение деревьев. Бинарные деревья. Машинное представление деревьев в памяти эвм. Алгоритмы прохождения деревьев.
- •2. Реляционная модель данных. Базовые понятия. Отношения и свойства отношений. Составляющие реляционной модели данных.
- •Билет 16.
- •1. Предваренная, скулемовская и клазуальная формы. Логическое следование. Унификация. Алгоритм унификации. Исчисление метода резолюций.
- •2. Структура внешнего описания пс. Качество по. Критерии и примитивы качества.
- •Билет 17.
- •1. Понятия прерывания. Виды прерываний. Механизмы прерываний.
- •2. Стадии и этапы разработки базы данных.
- •3. Дан массив типаwordразмерностьюn. Найти сумму всех элементов не прерывающих заданногоm, далее вывести на экран.
- •Билет 18.
- •1. Понятие о способах коммутации в распределенных вычислительных системах(коммутации каналов, коммутация пакетов).
- •2. Процессы управления разработкой пс. Структура управления разработки пс. Планирование составление расписания по разработке пс. Аттестация пс.
- •3. НаписатьHtmLкод для отображения в браузере таблицы:
- •Билет 19.
- •1. Характеристики транспортного и прикладного уровней стека протоколовTcp/ip.
- •2. Трехуровневая архитектура схем баз данных в субд.
- •3. НаписатьHtmLкод для отображения в браузере таблицы:
- •Билет 20.
- •1. Формальные языки и грамматики. Классификация грамматик по Хомскому.
- •2. Методы разработки структуры пс. Восходящая разработка пс. Нисходящая разработка. Конструктивный подход. Архитектурный подход разработки пс.
- •Билет 21.
- •1. Конечные автоматы, автомат со стековой памятью (магазин).
- •2. Организация шин.
- •Билет 22.
- •1. Сети Петри. Моделирование процессов на основе сетей Петри.
- •2. Организация памяти эвм.
- •Билет 23.
- •1. Понятия прерывания. Виды прерываний. Механизмы прерываний.
- •2. Инструментальные среды разработки и сопровождения программных средств и принципы их классификации. Основные классы инструментальных сред разработки и сопровождения программных средств.
- •Билет 24.
- •1. Динамическое поведение объектов. Состояния, события, сигналы и сообщения. Модели взаимодействия объектов.
- •2. Типы структур вычислительных машин и систем, перспективы и развития.
- •Билет 25
- •1. Структура данных типа стек. Логическая структура стека. Машинное представление стека и реализация операций.
- •2. Основные понятия, определения и назначение сапр
- •3. Составить программу, которая формирует очередь, добавляя в неё произвольное количество компонент.
- •Билет 26.
- •1. Сравнительный анализ алгоритмов поиска: линейный, двоичный.
- •2. Факторы, определяющие развитие архитектуры вычислительных систем.
- •3. Составить программу, которая формирует очередь, добавляя в неё произвольное количество компонент.
- •Билет 27.
- •1. Рекурсивные функции. Лямбда- исчисление Черча.
- •2. Обеспечивающие системы сапр.
- •Билет 28.
- •1. Память. Типы адресов. Виды распределения памяти.
- •2. Архитектура системы команд.
- •3. Найти в массиве максимальный элемент и его индекс. Вывести на печать.
- •Билет 29.
- •1. Аппаратура передачи данных (модемы).
- •2. Проектные процедуры в сапр.
- •Билет 30.
- •1. Характеристика канального и сетевого уровней стека протоколовTcp/ip.
- •2. Стековая архитектура вычислительных машин.
- •Билет 31
- •1. Синтаксический разбор. Классификация методов синтаксического разбора.
- •2. Интеграция систем автоматизации проектирования и управления(cad–cam–capp– системы).
- •Билет 32
- •1. Понятие алгоритма. Интуитивное понятие алгоритма.
- •2. Объекты и отношения в программировании. Сущность объектного подхода к разработке программных средств. Особенности объектного подхода к разработке внешнего описания программного средства.
- •3. Указать к какому классу относится каждый из перечисленныхIPадресов:
- •Билет 33.
- •1. Объявление и реализация классов на языке Паскаль.
- •2. Архитектура клиент-сервер. Распределенные базы данных.
- •Билет 34.
- •1. Характеристики транспортного и прикладного уровней стека протоколовTcp/ip.
- •2. Вычислительные методы решения задач на эвм. Приближения функций. Интерполяция и Метод наименьших квадратов.
- •Билет 35.
- •1. Компоненты и интерфейсы. Диаграммы физического уровня.
- •2. Правовые вопросы организации Интернет-сайта.
- •Билет 36.
- •1. Структуры данных типа очередь. Логическая структура очереди. Машинное представление очередиFifOи реализация операций. Очереди с приоритетами.
- •2. Моделирование как процесс познания. Математическая модель, понятие вычислительного эксперимента и его структура.
- •3. Составить программу, которая формирует стек, добавляя в него произвольное количество компонент.
- •Билет 37
- •1. Улучшенные методы сортировки. Сортировка Шелла, Хоара, улучшенная сортировка выбором. Сортировка с помощью дерева.
- •2. Правовые вопросы, возникающие при использовании электронной почты.
- •3. Составить программу, которая формирует стек, добавляя в него произвольное количество компонент.
- •Билет 38.
- •1. Классификация ос. Требования, предъявляемые к ос.
- •2. Понятие системы. Математическое определение системы. Классификация систем.
- •Билет 39.
- •1. Понятия файла. Структура файла. Реализация файлов
- •2. Виды объектов авторского права. Виды авторских прав. Программы для эвм и базы данных, как объектов авторского права.
- •3. Подсчитать сколько раз в массиве встречается заданный элементN. Вывести количество данных вхождений.
- •Билет 40.
- •1. Характеристики локальных вычислительных сетей типаEthernet.
- •2. Нормальный алгоритм Маркова.
- •3. Написать кодcssфайла в котором при помощи псевдоклассов описывается поведение ссылок отличное от стандартного.
- •Билет 41.
- •1. Взаимодействие узлов с использованием стека протоколовTcp/ip.
- •2. Объекты патентного права.
- •3. Указать к какому классу относится каждый из перечисленныхIPадресов:
- •Билет 42.
- •1. Машина Тьюринга.
- •2. Уровни моделирования. Общая характеристика и особенности. Моделирование на микроуровне. Обобщенная модель и моделирование тепловых систем (краевая задача для уравнения теплопроводности)
- •2) Уравнение теплопроводности
- •Билет 43.
- •1. Архитектура системы команд.
- •2. Уровни моделирования. Моделирование на макроуровне. Типичная общая модель и моделирование электрических систем.
- •Билет 44.
- •1. Структуры данных типа очередь. Логическая структура очереди. Машинное представление очередиFifOи реализация операций. Очереди с приоритетами.
- •2. Принципы построения современных эвм.
- •3. Найти в массиве максимальный элемент и его индекс. Вывести на печать.
- •Билет 45.
- •1. Характеристика канального и сетевого уровней стека протоколовTcp/ip.
- •2. Численное решение задачи Коши для обыкновенных дифференциальных уравнений. Метод Эйлера. Одношаговые и многошаговые методы.
- •3. Указать к какому классу относится каждый из перечисленныхIPадресов:
2. Нормализация таблиц при проектировании баз данных. Нормальные формы (1нф, 2нф, 3нф, нфбк).
Нормальная форма — свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, потенциально приводящей к логически ошибочным результатам выборки или изменения данных. Нормальная форма определяется как совокупность требований, которым должно удовлетворять отношение.
Назначение:
исключение некоторых типов избыточности;
устранение некоторых аномалий обновления;
разработка проекта базы данных, который является достаточно «качественным» представлением реального мира, интуитивно понятен и может служить хорошей основой для последующего расширения;
упрощение процедуры применения необходимых ограничений целостности.
Используемые термины
Атрибут — свойство некоторой сущности. Часто называется полем таблицы.Домен атрибута — множество допустимых значений, которые может принимать атрибут.Кортеж — конечное множество взаимосвязанных допустимых значений атрибутов, которые вместе описывают некоторую сущность (строка таблицы).Отношение — конечное множество кортежей (таблица).Схема отношения — конечное множество атрибутов, определяющих некоторую сущность. Иными словами, это структура таблицы, состоящей из конкретного набора полей.Проекция — отношение, полученное из заданного путём удаления и (или) перестановки некоторых атрибутов.Функциональная зависимость между атрибутами (множествами атрибутов) X и Y означает, что для любого допустимого набора кортежей в данном отношении: если два кортежа совпадают по значению X, то они совпадают по значению Y. Например, если значение атрибута «Название компании» — Canonical Ltd, то значением атрибута «Штаб-квартира» в таком кортеже всегда будет Millbank Tower, London, United Kingdom. Обозначение: {X} -> {Y}.
Первая нормальная форма (1NF)
Отношение находится в первой нормальной форме, если все его атрибуты атомарны.
Вопрос об атомарности атрибутов решается на основе семантики данных, то есть их смыслового значения. Атрибут атомарен, если его значение теряет смысл при любом разбиении на части или переупорядочивании. Следовательно, если какой-либо способ разбиения на части не лишает атрибут смысла, то атрибут неатомарен.
Пример:
Исходная ненормализованная (то есть не являющаяся правильным представлением некоторого отношения) таблица:
Сотрудник |
Номер телефона |
Иванов И. И. |
283-56-82 390-57-34 |
Петров П. П. |
708-62-34 |
Таблица, приведённая к 1NF (являющаяся правильным представлением некоторого отношения):
Сотрудник |
Номер телефона |
Иванов И. И. |
283-56-82 |
Иванов И. И. |
390-57-34 |
Петров П. П. |
708-62-34 |
Вторая нормальная форма (2NF)
Вторая нормальная форма требует, чтобы неключевые столбцы таблиц зависели от первичного ключа в целом, но не от его части.
Так же должны выполняться условия для первой нормальной формы.
Если таблица находится в первой нормальной форме и первичный ключ у нее состоит из одного столбца, то она автоматически находится и во второй нормальной форме.
Пример:
Пусть в следующем отношении первичный ключ образует пара атрибутов {Сотрудник, Должность}:
Сотрудник |
Должность |
Зарплата |
Наличие компьютера |
Гришин |
Кладовщик |
20000 |
Нет |
Васильев |
Программист |
40000 |
Есть |
Иванов |
Кладовщик |
25000 |
Нет |
Зарплату сотруднику каждый начальник устанавливает сам (хотя её границы зависят от должности). Наличие же компьютера у сотрудника зависит только от должности, то есть зависимость от первичного ключа неполная.
В результате приведения к 2NF исходное отношение следует декомпозировать на два отношения:
Сотрудник |
Должность |
Зарплата |
Гришин |
Кладовщик |
20000 |
Васильев |
Программист |
40000 |
Иванов |
Кладовщик |
25000 |
Должность |
Наличие компьютера |
Кладовщик |
Нет |
Программист |
Есть |
Третья нормальная форма (3NF)
Чтобы таблица находилась в третьей нормальной форме, необходимо, чтобы неключевые столбцы в ней не зависели от других неключевых столбцов, а зависели только от первичного ключа.
Так же должны выполняться условия для второй нормальной формы.
Самая распространенная ситуация в данном контексте - это расчетные столбцы, значения которых можно получить путем каких-либо манипуляций с другими столбцами таблицы. Для приведения таблицы в третью нормальную форму такие столбцы из таблиц надо удалить.
Каждый неключевой атрибут «должен предоставлять информацию о ключе, полном ключе и ни о чём, кроме ключа»
Пример:
Рассмотрим в качестве примера отношение, которое находится во 2NF, но не соответствует 3NF:
R1
Сотрудник |
Отдел |
Телефон |
Гришин |
Бухгалтерия |
11-22-33 |
Васильев |
Бухгалтерия |
11-22-33 |
Петров |
Снабжение |
44-55-66 |
В отношении атрибут «Сотрудник» является первичным ключом. Личных телефонов у сотрудников нет, и телефон сотрудника зависит исключительно от отдела.
Таким образом, в отношении существуют следующие функциональные зависимости: Сотрудник → Отдел, Отдел → Телефон, Сотрудник → Телефон.
Зависимость Сотрудник → Телефон является транзитивной, следовательно, отношение не находится в 3NF.
В результате разделения отношения R1 получаются два отношения, находящиеся в 3NF:
R2
Отдел |
Телефон |
Бухгалтерия |
11-22-33 |
Снабжение |
44-55-66 |
R3
Сотрудник |
Отдел |
Гришин |
Бухгалтерия |
Васильев |
Бухгалтерия |
Петров |
Снабжение |
Исходное отношение R1 при необходимости легко получается в результате операции соединения отношений R2 и R3.
BCNF - нормальная форма Бойса-Кодда.
Эта нормальная форма вводит дополнительное ограничение по сравнению с 3НФ. Определение нормальной формы Бойса-Кодда:
Отношение находится в BCNF, если оно находится во 3НФ и в ней отсутствуют зависимости атрибутов первичного ключа от неключевых атрибутов.
Ситуация, когда отношение будет находится в 3NF, но не в BCNF, возникает при условии, что отношение имеет два (или более) возможных ключа, которые являются составными и имеют общий атрибут. Заметим, что на практике такая ситуация встречается достаточно редко, для всех прочих отношений 3NF и BCNF эквивалентны.
Пример:
Предположим, рассматривается отношение, представляющее данные о бронировании теннисных кортов на день:
Бронирования кортов
Номер корта |
Время начала |
Время окончания |
Тариф |
1 |
09:30 |
10:30 |
«Бережливый» |
1 |
11:00 |
12:00 |
«Бережливый» |
1 |
14:00 |
15:30 |
«Стандарт» |
2 |
10:00 |
11:30 |
«Премиум-B» |
2 |
11:30 |
13:30 |
«Премиум-B» |
2 |
15:00 |
16:30 |
«Премиум-А» |
Тариф имеет уникальное название и зависит от выбранного корта и членства в клубе, в частности
«Бережливый»: корт 1 для членов клуба
«Стандарт»: корт 1 для не членов клуба
«Премиум-А»: корт 2 для членов клуба
«Премиум-B»: корт 2 для не членов клуба.
Таким образом, возможны следующие составные первичные ключи: {Номер корта, Время начала}, {Номер корта, Время окончания}, {Тариф, Время начала}, {Тариф, Время окончания}.
Отношение соответствует второй (2NF) и третьей (3NF) нормальной форме. Требования второй нормальной формы выполняются, так как все атрибуты входят в какой-то из потенциальных ключей, а неключевых атрибутов в отношении нет. Также нет и транзитивных зависимостей, что соответствует требованиям третьей нормальной формы. Тем не менее, существует функциональная зависимость Тариф → Номер корта, в которой левая часть (детерминант) не является потенциальным ключом отношения, то есть отношение не находится в нормальной форме Бойса — Кодда.
Недостатком данной структуры является то, что, например, по ошибке можно приписать тариф «Бережливый» к бронированию второго корта, хотя он может относиться только к первому корту.
Можно улучшить структуру с помощью декомпозиции отношения на два и добавления атрибута Является членом клуба, получив отношения, удовлетворяющие BCNF (подчёркнуты атрибуты, входящие в первичный ключ.):
Тарифы
Тариф |
Номер корта |
Является членом клуба |
«Бережливый» |
1 |
Да |
«Стандарт» |
1 |
Нет |
«Премиум-А» |
2 |
Да |
«Премиум-B» |
2 |
Нет |
Бронирования
Тариф |
Время начала |
Время окончания |
«Бережливый» |
09:30 |
10:30 |
«Бережливый» |
11:00 |
12:00 |
«Стандарт» |
14:00 |
15:30 |
«Премиум-B» |
10:00 |
11:30 |
«Премиум-B» |
11:30 |
13:30 |
«Премиум-А» |
15:00 |
16:30 |