
- •Информатика
- •Ответы на вопросы
- •1). Функции ос
- •2). Функции осmsdos. Обеспечение автоматического запуска ос,
- •3). Файлы autoexec.Bat и config.Sys Начальнаязагрузка.
- •4. Файловая структура. Диски, файлы, их имен
- •Работа с каталогами.
- •Работа с экраном, принтером.
- •Общесистемные команды.
- •5. Каталоги. Корневой и текущий каталоги. Путь к файлу.
- •6. Основные командыMsdos. Команды работы с каталогами
- •7. Оболочка Norton Commander. Возможности Norton Commander Оболочка Norton Commander
- •8. Дерево каталогов вNortonCommander. Просмотр и редактирование файлов.Создание и удаление файлов. Работа с группами файлами. Оболочка Norton Commander
- •Внешний вид экрана
- •Выделение файлов
- •Работа с файлами
- •Создание каталога
- •Дерево каталогов
- •9. Панели и функциональные клавиши вNortonCommander. Меню Norton Commander, Meню пользователя.
- •Активная панель. Управление указателем
- •Смена диск
- •Управление панелями:
- •Меню Norton Commander
- •Функциональные клавиши:
- •10 Структура и общие принципы построения программы вTurboPascal'eАлфавит,лексика. Операторные скобки. Алфавит Константы. Переменные.
- •11 Типы данных вTurboPascal`е. Порядковый, вещественный, структурированныйСовместимость и преобразование типов.
- •Простые типы данных
- •12 Имена и доступ к файлам в Turbo Pascal`е
- •13 Операторы ввода' вывода вTurboPascal`е
- •14 Операции вTurboPascal`е Математические операции
- •Логические операции
- •Операции отношения
- •Оператор выбора
- •16 Метки и оператор перехода.
- •17 Операторы циклов с предусловием, постусловием и с параметром вTurbo Pascal`е
- •18 Процедуры и функции вTurboPascal`е. Локализация имен.
- •19 Локальные и глобальные переменные вTurboPascal'e.
- •20 Процедуры и функции формальные и фактические параметры вTurbo Pascal`е
- •21 Переход в графический режим в Turbo Pascal`е. Масштабирование
- •22 Процедуры и функции вTurbo Pascal`е Pascal's для работы с экраном в графическом режиме.
- •23 Алгоритмы поиска и выборки элементовиз массивов данных. Двоичный (бинарный) поиск элемента в массиве
- •Интерполяционный поиск элемента в массиве
- •Критерии Эффективности
- •Сортировка выбором
- •Сортировка пузырьком
- •Сортировка простыми вставками
- •Сортировка Шелла (Ох и презабавная вещь).
- •Пирамидальная сортировка (Эх, мать…) Вариант №1 (Вики):
- •Вариант №2 (Алголист)
- •Фаза 1 сортировки: построение пирамиды
- •Фаза 2: собственно сортировка
- •Сортировка быстрая («Чем дальше в лес, тем злее дятлы…») Вариант №1 (Вики):
- •Вариант №2 (Forum.Pascal.Net):
- •Сортировка поразрядная
- •25 Табличный редактор Excel абсолютные и относительные адреса. Запись и выполнение операций. Графическое оформление результатов.
- •Список Крематоров. Примечания и пожелания.
- •В фильме снимались:
23 Алгоритмы поиска и выборки элементовиз массивов данных. Двоичный (бинарный) поиск элемента в массиве
Если у нас есть массив, содержащий упорядоченную последовательность данных, то очень эффективен двоичный поиск.
Переменные Lb и Ub содержат, соответственно, левую и правую границы отрезка массива, где находится нужный нам элемент. Мы начинаем всегда с исследования среднего элемента отрезка. Если искомое значение меньше среднего элемента, мы переходим к поиску в верхней половине отрезка, где все элементы меньше только что проверенного. Другими словами, значением Ub становится (M – 1) и на следующей итерации мы работаем с половиной массива. Таким образом, в результате каждой проверки мы вдвое сужаем область поиска. Так, в нашем примере, после первой итерации область поиска – всего лишь три элемента, после второй остается всего лишь один элемент. Таким образом, если длина массива равна 6, нам достаточно трех итераций, чтобы найти нужное число.
Двоичный поиск - очень мощный метод. Если, например, длина массива равна 1023, после первого сравнения область сужается до 511 элементов, а после второй - до 255. Легко посчитать, что для поиска в массиве из 1023 элементов достаточно 10 сравнений.
Function BinSearch (a:array;Lb,Ub:integer;Key:integer);
Var done:Boolean;
M:integer;
Begin
While not done do
Begin
M:= round((Lb + Ub)/2);
If (key<a[m] then
Ub:=m-1
Else if (key>a[m]) then
Lb:=m+1
Else BinSearch:=m;
If (Lb>Ub) then done:=true;
end;
End;
Интерполяционный поиск элемента в массиве
Представьте себе, что Вы ищете слово в словаре. Маловероятно, что Вы сначала загляните в середину словаря, затем отступите от начала на 1/4 или 3/4 и т.д, как в бинарном поиске.
Если нужное слово начинается с буквы 'А', вы наверное начнете поиск где-то в начале словаря. Когда найдена отправная точка для поиска, ваши дальнейшие действия мало похожи на рассмотренные выше методы.
Если Вы заметите, что искомое слово должно находиться гораздо дальше открытой страницы, вы пропустите порядочное их количество, прежде чем сделать новую попытку. Это в корне отличается от предыдущих алгоритмов, не делающих разницы между 'много больше' и 'чуть больше'.
Мы приходим к алгоритму, называемому интерполяционным поиском: Если известно, что К лежит между KlиKu, то следующую пробу делаем на расстоянии (u-l)(K-Kl)/(Ku-Kl) отl, предполагая, что ключи являются числами, возрастающими приблизительно в арифметической прогрессии.
Интерполяционный поиск работает за loglogNопераций, если данные распределены равномерно. Как правило, он используется лишь на очень больших таблицах, причем делается несколько шагов интерполяционного поиска, а затем на малом подмассиве используется бинарный или последовательный варианты.
// Поиск в массиве K[1..N] числа X интерполяционным поиском
find:=false;
FindPos:=-1;
L:=1; u:=N;
while(u>=l)
begin
i=L+(u-L)*(X-K[l])/(K[u]-K[L]);
if(X<K[i]) then u=i-1
else if(X>K[i]) then l=i+1
else begin
find:=true;
FindPos:=I;
End;
24 Алгоритмы сортировки данных. Критерии эффективности работы алгоритма .Сортировка выбором. Сортировка пузырьком. Сортировка простыми вставками. Сортировка Шелла. Сортировка пирамидальная. Сортировка быстрая. Сортировка поразрядная.
Алгоритм сортировки — это алгоритм для упорядочения элементов в списке. В случае, когда элемент списка имеет несколько полей, поле, служащее критерием порядка, называется ключом сортировки. На практике, в качестве ключа часто выступает число, а в остальных полях хранятся какие-либо данные, никак не влияющие на работу алгоритма.