- •15. Переменные и константы в языке vba. Правила составления имен переменных. Комментарии.
- •16. Математические операции в языке vba. Приоритет операций.
- •34. Понятие языка программирования. Языки низкого и высокого уровня.
- •40. Понятие класса и объекта в объектно-ориентированном программировании. Иерархия классов.
- •41. Основные парадигмы объектно-ориентированного программирования.
- •43. Понятие компьютерной сети и её топология. Задачи, решаемые при построении сети.
- •44. Виды топологий компьютерных сетей, их достоинства и недостатки.
- •49. Основные характеристики компьютерных сетей.
- •55. Назначение и структура адреса в доменной системе имен (dns).
- •56. Основные понятия всемирной паутины: http, html, url. Структура url.
- •59. Понятие и основные виды оп-line-сервисов в Интернет. Назначение ftp–сервиса.
- •60. Этапы работы поисковых систем в Интернет, их характеристики.
- •61. Основные цели защиты информации, согласно законодательству.
- •62. Виды и принцип работы антивирусных программ.
1. Предметная область сис-м упр-ния БД (СУБД). Модели представления данных.
Предметная обл. – фрагмент реального мира , сведения о к-й необходимо хранить и использовать в решаемой задаче.
При моделировании предметной обл. различают 3 вида моделей:
- физическая(способ хранения данных в памяти компа)
- инфологическая(описание и структурирование предметной обл., выполненное на естеств. языке с помощью матем. формул, рисунков и др. неформальных средств)
- датологическая(описание БД на языке описания конкретной СУБД: программы)
Виды СУБД (по моделям данных):
- иерархическая
-сетевая
-реляционная (самая распространенная)
- объектно-ориентированная
2.Иерархическая структура данных: описание, достоинства и недостатки.
«+» простота описания иерархич. структур внешн. мира.
«-» узкая область применения
3. Древовидная структура данных: описание и разновидности.
Древовидная структура - один из способов представления иерархической структуры в графическом виде. Древовидной структурой называется благодаря тому, что выглядит как перевернутое дерево. По этой же причине говорят, что корневой узел (корень) находится на самом верху, а листья — внизу.
Древовидные структуры по видам связей. Межды узлами ДС могут иметь место различные семантические отношения.
- принадлежность к какой-либо сфере деятельности (отношения Целое-Часть). К такому же типу относятся спецификации использующиеся в технике для описания состава устройства.
- множества объектов (отношения Общее-Частное) классификации живых существ,звёзд,химических элементов и т. п.
- Если связи соответствуют временным отношениям образуются такие ДС как Геохронологическая шкала или родословные деревья (генеалогическое древо).
4. Сетевая структура данных: описание, достоинства и недостатки.
«+» mах универсальность представления
«-» высокая сложность поиска инфы
5. Понятие реляционных БД
Особенность: - данные хранятся в таблицах, состоящих из строк и столбцов
- на пересечении каждого столбца и строки стоит ровно 1 значение
- у каждого столбца есть имя и все значения в столбцах имеют 1 и тот же тип
- запросы в БД имеют результатом такую же таблицу, к-я в свою очередь , также может быть использована в запросе.
- строки в БД могут быть не упорядочены
(Атрибут(поле) – наименьшая неделимая единица данных = столбец;
Запись(объект) – сов-ть min элементов данных(полей) = строчки;
Таблица – поименованная сов-ть однотипных записей)
В реляционной алгебре таблица – отношение.
6. Понятие СУБД и её состав.
СУБД – программные средства для создания, наполнения, поиска и удаления БД. (БД – это сов-ть записей различных типов и связей м/у ними)
7. Виды связей м/у таблицами в СУБД.
- 1-1 (устанавливает м/у 1 записью одной таблицы и 1 записью др. таблицы, для связи 2-х больших блоков инфы, отлич-ся по смыслу. Н-р: «анкета» и «адрес»)
- 1-много (устанавливает отношение м/у 1 записью одной таблицы и с многими записями другой таблицы.(таблица-справочник) Н-р: «экзамен»(много) – «анкета»(1))
- много-много (устанавливает отношения м/у несколькими записями одной таблицы и несколькими записями другой таблицы. Н-р: «дисциплины»(много) – «студент»(много))
8. Понятие ключа в СУБД, виды ключей.
Идентификатор сущности – атрибут или комбинация атрибутов, отличающая 1 экземпляр сущности от всех друхих экземпляров сущности того же типа. Н-р: фамилия – не может, ф.и.о. – лучше, № зачетки – лучше всего.
Первичный ключ – min набор атрибутов, по значению к-го можно однозначно найти требуемый экземпляр сущности.
Внешний ключ – атрибут и сочетание атрибутов сущности, к-й содержит значения первичного ключа другой сущности с целью организации связи м/у ними.
Вторичный ключ – атрибут или сочетание атрибутов, позволяющий выделить 1 группу сущности от другой (не обладает св-вом уникальности и служит для ускорения поиска в таблицах)
9. Понятие целостности в СУБД. Типы данных в СУБД.
Целостность – неприкосновенность, сохранность данных, правильность и непротиворечивость. Осн. вид ограничения целостности – типы данных.
Осн. типы данных:
- текстовый (любые символы букв, <=255)
- MEMO (<=64 KБ)
- числовой
-дата/время
- логический (0/1, истина/ложь, да/нет – только 2 значения)
- счетчик (вид числового типа, к-й автоматически увелич-ся на 1)
10. Понятие нормальной формы в СУБД. Нормализация и денормализация.
Нормальная форма – требование, предъявляемое к структуре БД для устранения избыточной функциональной завис-ти м/у полями.
Нормализация – процесс приведения к нормальной форме.
6 нормальных форм:
-1-2-3(таблица считается нормализованной)
-Бойса-Кодда(применяется не часто)
-4-5(на практике приме5няется редко)
Каждая следующая нормальная форма учитывает требования предыдущей.
Денормализация – намеренное приведение структуры БД в более простую нормальную форму с целью ускорения работы с ней.
11. Первая и вторая нормальная форма в БД.
Требования к 1-й: - запрещаются повторяющиеся по смыслу поля
- запрещаются множественные атрибуты
- обязательно должен быть первичный ключ.
Требования ко 2-й: - …
- каждый атрибут должен функционально полно зависеть от первичного ключа в целом (но не от его части).
12. Третья нормальная форма и форма Бойса-Кодда в БД.
Таблица находится в 3-й форме, если она находится во 2-й, а также из таблиц удалены транзитивные завис-ти(когда 2 неключевых атрибута отношения находятся в функциональной зависимости).
В форме Бойса-Кодда требуется, требуется, чтобы у таблицы был только 1 первичный ключ.
13. Понятие и назначение транзакций в СУБД.
Транзакция – последовательность операций над БД, к-е рассматриваются как единое целое. Действия, входящие в транзакцию, могут быть выполнены целиком либо не выполнено ни 1 из них.
14. Основные типы данных языка VBA. Описание переменных.
Тип данных определяет множество определенных значений, к-е может принимать указанная переменная. Тип данных определяет: - диапазон возможных значений переменной
- объем памяти, выделенной под переменную
- допустимые операции над этой переменной.
Осн. типы данных языка VBA:
- Integer (хранение целых знаковых чисел длиною в 4 Байта)
- String (хранение последоват-ти символов текста переменной длины)
- Single/Double (4 Байта/8 Байт) (хранение чисел с плавающей точкой – вещественных чисел)
- Variant(спец.тип) (хранение переменных различных типов)
Для задания опр. типа переменной исп-ся оператор Dim A as Integer (объявляется переменная А заданного). Оператор Dim задает тип переменной и выделяет под неё память. Начальное значение переменной не определено. Если память не объявлена с помощью оператора Dim явным образом, то она имеет тип Variant.
15. Переменные и константы в языке vba. Правила составления имен переменных. Комментарии.
((Для задания опр. типа переменной исп-ся оператор Dim A as Integer (объявляется переменная А заданного). Оператор Dim задает тип переменной и выделяет под неё память. Начальное значение переменной не определено. Если память не объявлена с помощью оператора Dim явным образом, то она имеет тип Variant.))
Условия составления имен переменных:
- длина имени не должна превышать 255 символов
- имя переменной не должно содержать точек, пробелов и т.д. (кроме подчеркивания)
- имя должно начинаться с буквы
- не допустимо повторяющихся имен, имена переменных не чувствительны к реестру (не различает а и А)
- нельзя использовать ключевые слова, зарегистрированные в VBA (имена операторов, функций).
Константы: - не могут менять своё значение.
- использование констант облегчает читаемость программы.
Описание константы: Const Pi as Single=3.14
Упрощенная форма записи такая: Const Pi=3.14 (тип Variant)
Комментарии – служат для добавления пометок в программы
- игнорируются интерпретатором языка VBA
- для улучшения читаемости программ
* - для записи знак апостроф (‘ пояснения)
- временное выключение отдельных строчек программы
(комментарий это то, что после апострофа до конца строки)
16. Математические операции в языке vba. Приоритет операций.
- сложение [операнд1]+[операнд2], А+В (в лит-ре эта запись означает, что вместо этого по смыслу подставляется переменная)
- вычитание []+[]
- умножение []*[]
- вещественное деление []/[] (рез-том может быть дробное число)
- целочисленное деление []\[] ( целое число, полученное не округление рез-та, а отбрасыванием дробной части. Н-р: 3,9\2=1)
- взятие остатка []mod[] Н-р:5mod2=1, 6mod2=0 (опред-ся четность, нечетность)
- возведение в степень []^[]
- минус -[].
Приоритет операций:
- скобки и вызов ф-ции
- в степень
(- унарный минус)
- умножение или вещест.деление
- целочисленное деление
- взятие остатка
- сложение или вычитание
(- сравнение
- операция not
- логическое «и»
- логическое «или»
- исключающее «или» (xor))
17. Операции сравнения и логические операции в языке VBA.
Операции отношения: в качестве операндов исп-ся целые или переменные веществ.числа. Рез-том операции имеет логический (булевый тип) – истина/ложь.
- []<[]
- []>[]
- []=[]
- []<=[]
- []>=[]
- []<>[]
Логические операции: операнды – логические переменные или const. Рез-т – логическое значение.
- логич.умножение «и» ([]and[]). Н-р: 0<a<=1 – в матем, (а>0)and(a<=1) – в VBA.
- логич.сложение «или» []or[]
- исключающее «или» []xor[]
- унарное отрицание not[]
18. Математические функции и функции преобразования форматов в языке VBA.
Матеем.ф-и: - ABS[] ф-я возвращает модуль числа
- SIN[]
- COS[]
- TAN[] тангенс
- SQR[] квадратный корень из числа
- ATN[] арктангенс
- EXP[] экспонента числа (EXP(A)=2,7^A)
- LOG[] натуральный логарифм
- RND[] возвращает случайное (псевдослучайное) число в диапазоне от 0 до указ-го в [] числа
Ф-и преобразования форматов:
- Val[строка] – выражение строкового типа в числовое значение
- Str[число] – число в строку
19. Операция присваивания и операторы ввода и вывода в языке VBA.
Операции присваивания: [переменная]=[выражение], 1 переменная, const, сочетание любых допустимых операций. Н-р: А=B^C (А присвоить В в степени С)
Ф-и ввода и вывода:
- INPUT BOX[подсказка] – выводит на экран диалоговое окно ввода(строковое выражение – подсказка, что от него требуется ввести)
InputBox(введите х) – ф-я возвращает значение строкового типа, введенное пользователем. Н-р: х=Val(InputBox[подсказка]) – возвращает строковое значение, к-е ввел пользователь.
- DEBUG.PRINT_[подсказка] – вывод на экран
20. Виды и назначение блоков в блок-схемах.
- блок ввода/вывода
(внутри переменная)
- начало/конец программы
или подпрограммы
- блок вычислений
(внутри вычисления)
- блок условия
(внутри условие)
- блок цикла с параметром
(внутри параметр цикла,
его пределы и шаг)
21. Оператор ветвления в языке VBA: его формы.
IF – для организации разветвлений. Условие – логическое выражение.
- If[условие] then
[операторы гр1]
else
[операторы гр2]
end if
Если условие верное, то вып-ся операторы гр1, а гр2 опускается, если усл-е не верно, то вып-ся операторы гр2, а гр1 опускается.
- Сокращенная форма оп-ра If:
If[усл-е] then
[операторы]
end if
(else и операторы гр2 могут отсутствовать)
(если есть излом – стрелка, если излома нет, то напр-е не стандартное
(снизу-вверх,справа- налево))
Н-р: реализовать программу вычисл-я ф-й:
SUB RAZV_ALG()
x=VAL(INPUT BOX(“введите переменную”))
IF x<0 THEN
y=-x
ELSE
IF x<3 THEN
y=0
ELSE y=(x-3)^2
END IF
END IF
DEBUG.PRINT “Результат=”; y
END SUB
22. Оператор цикла с параметром. Необходимые условия его применения и формы.
Операторы цикла необходимы для организации повторяющихся действий гр. оператора программы – тело цикла с разными значениями параметров или просто N-е кол-во раз.
Операторы цикла с параметром проще в написании и использовании, но менее универсальны.
FOR[счетчик]=[нач.знач-е] TO[конеч.знач-е] STEP[шаг]
[операторы] (-тело цикла)
NEXT[счетчик] (- имя переменной, к-я будет параметром в этом цикле)
Нач.знач-е – число или выражение, к-е примет счетчик при 1-м запуске цикла.
Кол-во повторов=([кон.знач-е]-[нач.знач-е]/шаг+1).
STEP с указанием шага может быть пропущен, если шаг=1.
Н-р: вывести значение ф-и у=а*x^2,х€[-10,10], ∆x=0,2.
SUB TSIKL_FOR
a=VAL(INPUT BOX(“введите а”))
FOR x=-10 TO 10 STEP 0,2
y=a*x^2
DEBUG.PRINT_”х=”; х; ”_у=”;у
NEXT x
END SUB
Осн.усл-я применения цикла FOR: - диапазон изм-я знач-я переменной заранее известен и фиксирован
- шаг принимается тоже заранее, известен и фиксирован.
23. Операторы While-Wend и Do-Loop. Их формы.
(более универсальны и могут заменять циклы с параметром)
Циклы с условием:
- WHILE[условие продвижения]
[операторы]
WEND
Операторы вып-ся до тех пор, пока условие верно. Операторы в теле цикла должны приводить к изменению усл-я продолжения, чтобы цикл мог завершиться, иначе происходит зацикливание (оставновка: CONTR+BAG)
Н-р: вычислить сумму ряда:
Н-р:SUB RJAG()
e=VAL(INPUT BOX(“введите e”))
n=1
a=1
S=0
WHILE ABS(a)>=e
a=1/n
S=S+a
n=n+1
WEND
DEBUG.PRINT_”сумма=”; S
END SUB
- DULUG (4 формы):
1)циклы с предусловием:
a) DO WHILE[усл-е прод-я]
[опер-ры]
LOOP
Логика этой версии полностью идентична WHILE/WEND
Н-р:SUB RJAG()
e=VAL(INPUT BOX(“введите e”))
n=1
a=1
S=0
DO WHILE ABS(a)>=e
a=1/n
S=S+a
n=n+1
LOOP
DEBUG.PRINT_”сумма=”; S
END SUB
b) DO UNTIL[усл-е останова]
[операторы]
LOOP
Тело цикла вып-ся пока условие останова не верно, как только станет верно, завершает.
Н-р:SUB RJAG()
e=VAL(INPUT BOX(“введите e”))
n=1
a=1
S=0
DO UNTIL ABS(a)<e
a=1/n
S=S+a
n=n+1
LOOP
DEBUG.PRINT_”сумма=”; S
END SUB
2) Циклы с постусловием:
с) DO
[опер-ры]
LOOP WHILE[условие прод-я]
Операторы тела цикла вып-ся всегда хотя бы 1 раз, а последние опер-ции, если последнее верно.
Н-р:SUB RJAG()
e=VAL(INPUT BOX(“введите e”))
n=1
a=1
S=0
DO
a=1/n
S=S+a
n=n+1
LOOP WHILE ABS(a>=e)
DEBUG.PRINT_”сумма=”; S
END SUB
d) DO
[опер-ры]
LOOP UNTIL[усл-я останова]
Тело операции вып-ся всегда,а последнее, пока условие останова не верно, заверш-ет, когда верно.
Н-р:SUB RJAG()
e=VAL(INPUT BOX(“введите e”))
n=1
a=1
S=0
DO
a=1/n
S=S+a
n=n+1
LOOP UNTIL ABS(a)<e
DEBUG.PRINT_”сумма=”; S
END SUB
24. Отличие массивов от переменных. Назначение массивов и их описание.
Массив – множ-во значений 1 типа, доступ к к-м осущ-ся через 1 переменную с указанием номера элементов в этом множ-ве. Каждое значение в массиве называется элементом. Номер элемента в списке называется индексом. В качестве номера элемента может исп-ся как const или переменная.
25. Этапы работы с массивами. Виды массивов.
Этапы работы с массивами:
- заполнение массива данными
- преобразование массива (действия с элементами массива)
- вывод массива или отдельных данных на экран
Виды массивов:
1)- статические(кол-во переменных в массиве const, используется DIM A(5))
- динамические (кол-во пер-х=переменная, то REDIM A(N))
2) Количество индексов элементов массива определяет размерность массива. По этом признаку массивы делятся на одномерные (линейные), двумерные, трёхмерные и т.д.
- одномерные - При объявлении массива указ-ся тип элементов, из к-х он состоит и их кол-во. Если кол-во переменных в массиве const, используется DIM A(5); если кол-во пер-х=переменная, то REDIM A(N).
Н-р: найти сумму и кол-во четных элементов вектора(одм.массива). i€[1,N], ∆i=1.
SUB SUM_VECT()
N=VAI(INPUTBOX(“введите кол-во элементов”))
REDIM A(N)
FOR i=1 TO N
A(i)= VAI(INPUTBOX(“введите элемент №”+STR(i)))
NEXT i
S=0
K=0
FOR i=1 TO N
IF A(i)MOD2=0 THEN
S=S+A(i)
K=K+1
END IF
NEXT i
DEBUG.PRINT “S=”; S;_”K=”; K
END SUB
- двумерные – массивы, у к-х нумерация элементов осущ-ся 2-мя числами. Матрица – графич. представление двум.массива. (1N – N строки, 2N – N столбца.) Для опис-я исп-ся DIM A(5, 5); REDIM A(М, N).
Н-р: Найти max элемент побочной диагонали A(N,N).
SUB MATRIX()
N=VAI(INPUTBOX(“введите кол-во строк и столбцов”))
REDIM A(N,N)
FOR i=1 TO N
FOR j=1 TO N
A(i,j)= ROUND(RND()*20)-10
NEXT j
NEXT i
MAX=-11
FOR i=1 TO N
IF A(i, N-i+1)>MAX THEN
MAX=A(i, N-i+1)
END IF
NEXT i
DEBUG.PRINT “MAX”; MAX
END SUB
26. Понятие строк в языке VBA, работа со строками.
Строка – упоряд. последовательность символов либо пустая строка. Для задания знач-я строковых переменных сама строка заключ-ся в кавычки.
А=«Привет»; А=« ». Каждый символ в строке имеет №.
Н-р: «47»+ «3»= «473», 47+3=50
27. Основные функции работы над строками в языке VBA.
LEN(<строка>) – возвращает длину строки
LEN(«привет всем»)=11
LEFT(<строка>,<кол-во>) – возв-ет под строку, к-я берется из 1-го аргумента, указывая кол-во.
LEFT(«привет», 2)=»пр»
RIGHT(<строка>,<кол-во>) - возв-ет под строку, к-я берется из 1-го аргумента, указывая кол-во.
MID(<строка>,<начиная с>,<кол-во>) – возв-ет код строки
MID(«привет», 3,2)= «ив»
INSTR(<начиная с>,<строка>,<подстрока>) – возв-ет № позиции, в к-й найдена подстрока
INSTR(1, «привет», «ве»)=4
INSTR(4, «всем привет», «с»)=0 – если подстрока не найдена, возв-ся 0.
VAL(<строка>) – преоб-ет строковое знач-е в числовое
А=VAL(«47»)+ VAL(«3»)=50
STR(<число>) – преоб-ет числ.знач-е в строковое
А=STR(47)+ STR(3)=473
Н-р: посчитать кол-во букв а в зад.слове.
SUB STR()
A=VAI(INPUTBOX(“введите строку”))
C=0
FOR i=1 TO LEN(A)
IF MID(A,i,1)=”a” THEN
C=C+1
END IF
NEXT i
DEBUG.PRINT “C=”; C
END SUB
28. Понятие и назначение пользовательских процедур и функций, их отличие друг от друга.
Процедуры – фрагмент программы, с помощью к-го реш-ся локальная задача.
Функции – процедура, к-я возвращает какое-то значение.
Параметры, указ-е при объявлении процедуры и ф-и наз-ся формальными параметрами. Параметры, подст-е при вызове этих процдур и ф-й наз-ся фактическими.
Осн.алгоритмич.конструкции: - следование
- ветвление
- повторение.
При исп-нии подпрограмм необходимо согласовать их параметры.
Н-р: выч-ть факториал всех эл-в А(N).
SUB RANDOM_ARRAY(A,N)
FOR i=1 TO N
A(i)= ROUND(RND()*20)-10
NEXT i
END SUB
FUNCTION FACT(n)
f=1
FOR i=1 TO n
f=f*i
NEXT i
FACT=f
END FUNCTION
SUB RRI()
N=VAI(INPUTBOX(“”))
REDIM A(N)
CALL RANDOM-ARRAY(A,N)
FOR i=1 TO N
DEBUG.PRINT FACT(A(i))
NEXT i
END SUB
29. Преимущества от применения в программах процедур и функций.
- позволяют сократить текст программы
- улучшить читаемость программы
- упрощает отладку программы
- позволяет вызывать подпрограмму из разных участков программы
- облегчает модификацию программы
30. Этапы разработки программного обеспечения.
- анализ требований
- проектирование
- кодирование
- тестирование и отладка
- документирование
- сопровождение
31. Назначение следующих этапов разработки программного обеспечения: проектирование, тестирование, документирование.
- проектирование (построение матем. модели задачи, пригодной для реализации на компе)
- тестирование и отладка (поиск ошибок во всех возможных режимах работы программ с привлечением спец.ср-в – программы-отладчики) – наиболее трудоемкий этап
- документирование (составление документации)
32. Назначение следующих этапов разработки программного обеспечения: анализ требований, кодирование, сопровождение.
- анализ требований (осущ-ся анализ задачи и словесное описание её решения с привлечением специалистов)
- кодирование (составление алгоритма и текста программ)
-сопровождение (работа с заказчиком с целью выявить и устранить оставшиеся ошибки и совершенствовать программу)
33. Понятие алгоритма, его свойства.
Алгоритм – с-ма точных и понятных предписаний о содержании и послед-ти действий, необходимых для решения данной задачи.
Способы записи алгоритмов: - словесный (с применением или без пр-я спец. терминов на естеств.языке)
- графический(блок-схема)
- структурно-стилизованный (с помощью псевдокода)
Св-ва алгоритмов: - детерменированность(единство толкования правил и действий)
- конечность (все действия внутри алгоритма должны завершиться до завершения всего алгоритма)
- результативность (по окончании алгоритма должен быть результат)
- массовость (универсальность) – алгоритм должен быть применен к целому ряду задач в рамках задания.
- правильность (не должен содержать ошибок и выдавать верные рез-ты)
- формальность (все команды алгоритма выполняются бездумно, сами за себя говорят)