- •1. Понятие алгоритма: рекурсивные функции, системы текстовых замен.
- •2.Системы счисления, переводы чисел из одной позиционной системы в другую.
- •3/4.Понятие подпрограммы, функции, возвращающей/не возвращающей значение в
- •5.Передача параметров в подпрограмму,параметры входные и выходные,параметры,передаваемые по значению и по адресу.
- •6.Использование подпрограмм, параметры формальные, локальные, глобальные, обращения к подпрограммам, фактические параметры.
- •8.Статические и динамические переменные,динамическая память,работа с динамическими переменными.
- •9.Понятие линейного связного списка, типы списков, представление стека с помощью массива, пример использования стека.
- •10.Использование динамич. Переменных для представл. И работы со стеком.
- •11.Очередь,реализация очереди массивом.
- •12.Очередь, представление и реализация основных операций с помощью динамических переменных.
- •13.Реализация основных операций со списком:добавление, удаление, поиск.
- •14.Деревья,основные операции над деревьями, представление дерева массивом.
- •15.Двусвязные линейные списки, построение и обход бинарного дерева.
- •16.Операции поиска и удаления в бинарном дереве.
- •17.Понятие графа, представление графа в эвм.
- •18.Представление графа списком инцидентности,алгоритм обхода графа в глубину.
- •19.Представление графа списком списков,алгоритм обхода графа в ширину.
- •20.Технологии программирования,концепции,заложенные в ооп.
- •21.Основные понятия ооп:абстракция, инкапсуляция,полиморфизм.
- •22.Понятие объекта,его состояние и поведение,классы,определение класса и объявление класса.
- •23.Статистические,дружественные и виртуальные поля и методы,особенности их использования.
- •24.Абстрактные классы,их назначение и использование.
- •25.Понятие области видимости:общие,личные,защищенные и опубликованные поля и методы объекта.
- •26.Указатель This и перегрузка методов.
- •27.Использование классов,различные способы инициализации.
- •28.Использование классов,работа с массивами и указателями на объекты.
- •29.Наследование,пример использования наследования.
- •30.Конструкторы и деструкторы, их значение и использование.
- •31.Архитектура пк, основные функциональные устройства и их значения.
- •32.Мп с точки зрения программиста,регистры общего назначения.
- •33.Оперативная память,понятие исполняемого и физического адреса,сегментные регистры.
- •34.Регистр флажков, его назначение и использование.
- •35.Форматы данных и форматы команд.
- •36.Адресация операндов,способы адресации,примеры команд с различными способами адресации.
- •37.Структура программы на Ассемблере.Стандартные директивы сегментации.
- •38.Формат команды и директивы на Ассемблере.Примеры команд и директив.
- •39.Алфавит,слова,константы,переменные и выражения в Ассемблере.
- •40.Директивы определения данных и памяти.
- •41.Команды прерывания, команды работы со стеком.
19.Представление графа списком списков,алгоритм обхода графа в ширину.
Список списков занимает ограничение на множестве вершин в графе. Обход в ширину(замена стека на очередь).
При поиске в глубину,чем позднее будет просмотрена вершина, тем раньше она используется — принцип стека.
При обходе в ширину,чем раньше просматривается,добавляется в очередь, тем раньше используется — удалится, т.е просматривается все смежные с ней вершины сразу.
Алгоритм:
function BFS(v) begin Queue=0;v->Queue;Nov[v]=false; while(queue<>0)do begin
Queue->p;просмотреть p; for (u э spisok[p]) do if(Nov[u])then begin; Nov[u]=false;
u->queue;end;end;end; Оба алгоритма можно использовать для нахождения пути между вершинами u и v.
20.Технологии программирования,концепции,заложенные в ооп.
ООП — один из подходов к разработке программ. Исторически первый из реализуемых подходов — процедурное программирование, при котором создавались библиотеки стандартных программ,они использовались в различных областях применения ЭВМ-программирование «снизу-вверх», основано на создании модулей — одно из основных требований к машинно-зависимым языкам.
Структурное программирование — структурирование наборов действий,а ООП — структурирование наборами объектов => ООП — результат 30-летнего опыта программистов: Simula67->Smalltalk->Lisp-Clu-Actor->Eiffel->Objective C->Objective Pascal,Java,C++,C#.
Концепции 3аложеные в ООП:
-моделирование объектов и действий реального мира
-наличие типов данных , определённых пользователем
-скрытие деталей реализации
-возможность многократного использования программного кода
-интерпретация вызовов функций на этапе выполнения программы
Универсальные среды разработки Windows-приложений объединяют:
1) программирование по событиям - пр-ие ответных действий на реально возникшие события во время сеанса работы.
2) визуальное программирование даёт возможность изображать объекты на экране до выполнения самой программы. т.е программист видит, как будет выглядеть готовая программа => события управляют работой программы.
Реакция на событие - выполнение некоторой программы - метода объекта- обработчик события.
21.Основные понятия ооп:абстракция, инкапсуляция,полиморфизм.
Основная идея ООП — объединение данных и методов их обработки в единое целое — объект,который может использоваться как самостоятельная программная единица, или как часть другого объекта, или является базой для создания новых объектов.
Абстрагирование — метод решения задачи,при котором объекты разного рода объединяются общим понятием, а затем сгруппированные сущности рассматриваются как элементы единой категории.
Инкапсуляция — объединение данных с функциями,предназначенными для манипулирования этими данными в новом типе — КЛАССЕ.
Полиморфизм — многоформенность в С++;механизм,позволяющий использовать одинаковые имена для сходных по смыслу действий и методов,относящихся к различным объектам. Это означает, что один и тот же метод выполняется по разному для различных объектов.