Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
3) транслятор, отладчик, макроассемблер, командный процессор
4) транслятор, отладчик
5. Какой из представленных процессов трансляции имеет верный порядок:
1) синтаксический анализ, семантический анализ, компиляция, компоновка
2) синтаксический анализ, лексический анализ, интерпретация, компоновка
3)лексический анализ, семантический анализ, компоновка, загрузка
4)синтаксический анализ, трансляция, компоновка, загрузка.
6. Оператор – это
1)функция, которая оперирует данными
2) законченная фраза языка, предписание, команда
3)алгоритм действия программы, написанный на данном языке
4) процедура обработки данных
7. Язык программирования это
1)набор слов для написания программы 2)определенная последовательность бит
3)специально созданная система обозначений слов, букв, чисел
4) двоичные коды для компьютера
8. Синтаксис языка программирования – это
1)набор правил расстановки знаков препинания
2) система правил, определяющая допустимые конструкции языка
3)интерпретация отдельных языковых конструкций языка
4) фиксированный набор основных символов, допускаемых для составления программы
9. Компонентом, не имеющим свойство Caption является:
1). RadioButton 2) Form 3) CheckBox 4) Edit (TextBox)
10. Для ввода текстовой информации не используется компонент:
1) Label 2) Memo 3) ComboBox 4) RichEdit
11. Какой оператор нарушает линейный порядок исполнения программы в языке традиционного типа:
1) Описание переменных
2) Условный
3) Присваивание
3) Вызов процедуры
12. Какой оператор, как правило, не порождает команд в оттранслированной программе?
1) Описание переменных
2) Условный
3) Присваивание
3) Вызов процедуры
13. Какая теорема является теоретической основой стиля структурного программирования:
1) теорема об универсальном алгоритме
2) теорема Райса
3) теорема Хана – Банаха
4) теорема Бема – Джакопини
14 Создайте процедуру, допускающую в текстовое поле ввод только цифр, знаков «+», «-», «,».
15. Написать программу, заполняющую список десятью случайными числами в промежутке от a до b, a и b вводятся пользователем. Найти минимальное число из положительных и вывести результат на метку.
№ | 1 | 2 | 3 | 4 |
1 | Х | |||
2 | X | |||
3 | X | |||
4 | X | |||
5 | X | |||
6 | X | |||
7 | X | |||
8 | Х | |||
9 | X | |||
10 | X | |||
11 | Х | |||
12 | Х | |||
13 | Х |
11. Примерный перечень вопросов к зачету (экзамену).
1. Основные принципы объектно-ориентированного программирования.
2. Классы объектов. Типы методов. Динамическое конструирование объектов.
3. Состав проекта. Структура модуля.
4. Алфавит языка программирования. Простые типы данных. Переменные и константы. Область видимости.
5. Выражения и операции. Встроенные функции.
6. Структурные типы данных.
7. Обработка символьных выражений.
8. Общая характеристика визуальных компонентов. Свойства, методы, события.
9. Обработка событий мыши и клавиатуры.
10. Форма как компонент приложения. Создание и использование дополнительных форм. Создание консольных приложений.
11. Компоненты для работы с текстом. Функции для работы с символьной информацией.
12. Компоненты для создания списков. Свойства и методы.
13. Флажки и переключатели. Группа переключателей. Кнопка и кнопка с рисунком. Основные свойства и методы.
14. Стандартные диалоговые окна.
15. Операторы перехода по условию IF, CASE.
16. Циклические алгоритмы. Цикл FOR. Вложенные циклы.
17. Организация цикла с пред - и постусловием. Циклы WHILE, REPEAT.
18. Одномерные массивы. Основные способы обработки, сортировка. Компоненты для работы с массивами.
19. Двумерные массивы. Основные способы обработки, сортировка. Компоненты для работы с массивами.
20. Причины ошибок. Отладка программ. наблюдение и изменение значений переменных. Точки останова.
21. Средства отладки программ. Точки прерывания. Прерывание по условию.
22. Понятие исключительной ситуации. Стандартные классы исключительных ситуаций. Программный обработчик ошибок.
23. Создание главного и контекстного меню.
24. Подпрограммы – функции. Структура функции. Способы передачи параметров.
25. Подпрограммы – процедуры. Структура процедуры. Способы передачи параметров.
26. Создание и подключение дополнительного модуля.
27. Средства работы с файлами.
28. Графические возможности ЯП.
29. Основы работы с базами данных в языке программирования..
30. Создание и использование динамически подключаемых библиотек DLL.
31. Создание компонента пользователя
12. Примерная тематика курсовых работ:
1. Задача сетевого планирования и управления.
2. Теория расписаний: задача о нескольких исполнителях.
3. Исследование сложности некоторых задач.
4. Стеки в анализе синтаксиса и вычислении значений символьных выражений.
5. Элементы криптологии: разработка ключа по Дифии-Хеллману.
6. Система кодирования RSA.
7. Хеширование. Хранение хеш-таблиц на диске.
8. Создание текстового редактора средствами Lazarus.
9. Технология использования подключаемых модулей (плагинов).
10. Разработка двух панельного файлового менеджера средствами Lazarus.
11. Технология работы с OpenOffice. org средствами Lazarus.
12. Разработка простейшего почтового клиента средствами Lazarus.
13. Разработка простейшего FTP-сервера средствами Lazarus.
14. Разработка приложения для общения по локальной сети без выделенного сервера.
15. Создание программы для общения по локальной сети с выделенным сервером.
16. Использование технологии OpenGL для моделирования трехмерных пространств.
17. Технология программирования перемещения в трехмерном пространстве.
18. Технология использования трехмерных моделей при разработке 3D игр.
19. Анализ столкновения объектов в 3-х мерном пространстве.
20. Разработка простейшего файлового менеджера для ОС Linux.
21. Разработка программы для общения по локальной сети для ОС Linux.
22. Разработка простейшего текстового редактора для операционной системы Linux.
23. Разработка двух панельного файлового менеджера для операционной системы Linux.
24. Использование технологии Microsoft Agent в приложениях
25. Калькулятор для работы с действительными числами в различных системах счисления ( до 16 – ричной)
26. Выбор оптимальной стратегии в антагонистических играх.
27. Программирование лабиринтов
28. Программирование антагонистической игры для двух игроков.
29. Калькулятор для логических операций
30. Создание базы данных средствами языка программирования.
31. Реализация симплекс-метода. Задача об оптимальном ассортименте.
32. Реализация алгоритма задачи Прима-Краскала.
33. Реализация алгоритма задачи Штейнера на графах.
34. Реализация алгоритма задачи Дейкстры.
35. Методы решение задачи коммивояжера.
36. Решение транспортной задачи
37. Технология создания интерактивных презентаций средствами Visual Basic for Application.
38. Создание архиватора для черно-белых изображений с использованием RLE – кодирования.
39. Создание архиватора для черно-белых изображений с использованием алгоритма Хаффмана.
40. Создание архиватора для черно-белых изображений с использованием полуадаптивной схемы сжатия
41. Создание архиватора для WAV – фалов с использованием предиктивного моделирования.
42. Разработка и программная реализация алгоритма решения задачи «о максимальном потоке»
13. Содержательный компонент теоретического материала
Тема 1 Развитие языков программирования:
· План Последовательно рассматривается развитие языков программирования от самых первых алгоритмических языков до современных объектно-ориентированных языков программирования. Анализируются характеристики языка программирования в зависимости от области применения языка. Освещаются вопросы стандартизации языков программирования.
· Вопросы коллективного обсуждения: Области применения языков программирования в самых различных областях человеческой деятельности, таких как:
- научные вычисления (языки C++, FORTRAN, Java);
- системное программирование (языки C++, Java);
- обработка информации (языки C++, COBOL, Java);
- искусственный интеллект (LISP, Prolog);
- издательская деятельность (Postscript, TeX);
- удаленная обработка информации (Perl, PHP, Java, C++);
- описание документов (HTML, XML).
· Задания для самостоятельной работы: Повторение теоретического материала по теме «Процедурное программирование». Изучение теоретического материала «Развитие ЯП», практические навыки работы в среде разработки приложений.
· Литература (основная, дополнительная) [1][3][6][28][35][35][25][26]
Тема 2 Трансляторы:
· План: Виды трансляторов. Анализ исходной программы, синтез выполнимой формы данной программы. Однопроходные, двухпроходные и трансляторы, использующие более двух проходов.
· Вопросы коллективного обсуждения: задачи, решаемым семантическим анализатором:
- обнаружение ошибок времени компиляции;
- заполнение таблицы символов, созданной на этапе лексического анализа, конкретными значениями, определяющими дополнительную информацию о каждом элементе таблицы;
- замена макросов их определениями;
- выполнение директив времени компиляции.
· Задания для самостоятельной работы: Изучит типы трансляторов, способы обработки и устранения ошибок, отладки программы.
· Литература (основная, дополнительная): [3][4][13]
Тема 3 Алфавит языка. Типы данных
· План Простые и структурированные данные. Переменные и константы. Описание переменных. Область видимости переменных. Представление в памяти целых и вещественных типов данных.
· Вопросы коллективного обсуждения:
· Задания для самостоятельной работы: Изучить способы описания переменных, типы данных для использования их в приложениях. Изучить функции преобразования типов.
Литература:[1][5][11][12][13][14][21][22][23]
Тема 4 Управляющие структуры -1
· План Управление последовательностью действий в языках программирования может быть представлено некоторой управляющей структурой. Такая структура называется неявным управлением в том случае, если последовательность действий определяется естественным образом (например, выполнение программы идет с первого оператора и т. д.). Управляющая структура как явное управление для изменения порядка выполнения действий. Основными управляющими структурами:
- операторы;
- выражения;
- подпрограммы
· Вопросы коллективного обсуждения: представления выражения в линейной форме в следующих формах записи:
- префиксная запись;
- постфиксная запись;
- инфиксная запись
· Задания для самостоятельной работы: разработка алгоритмов с использованием управляющих конструкций.
Литература (основная, дополнительная): [1][2][11][12][13][14][[21][22][[23]
Тема5 Управляющие структуры -2
· План Выражения и операции. Приоритет операций. Функции. Алгоритм выполнения структурированной программы. Блок – схемы. Простые и составные операторы. Операторы выбора. Операторы цикла. Операторы перехода. Операторы исключений.
· Вопросы коллективного обсуждения: Реализация различных алгоритмов с помощью операторов языка программирования.
· Задания для самостоятельной работы: разработка различных типовых алгоритмов циклической структуры.
Литература (основная, дополнительная): [1][2][11][12][13][14][[21][22][[23]
Тема6 Символьные и логические переменные и выражения.
· План Рассматриваются символьные переменные и способы кодирования символов. Вводится логический тип и логические выражения, подчеркивается отличие логических выражений от арифметических: сокращенное вычисление результата. Определяется конструкция массива. Рассматриваются возможные способы представления текстовых строк.
· Вопросы коллективного обсуждения: Основные операции со строками, виды кодировок русских букв: CP-1251, КОИ-8, Unicode. Особенность реализации логических операций.
· Задания для самостоятельной работы: разработка типовых различных алгоритмов обработки строк и использования логических и символьных выражений. Изучить строковые функции.
· Литература (основная, дополнительная):[1][2][3][5][22][23][24]
Тема7: Массивы
· План. Способы описания и задания массивов. Основные операции с массивами: поиск элемента, количества элементов, удовлетворяющих некоторому условию, нахождение минимального, максимального элемента, суммы, произведения элементов, сортировка.
· Вопросы коллективного обсуждения: визуальные компоненты для размещения массивов, способы задания массива по заданному условию.
· Задания для самостоятельной работы: разработка типовых различных алгоритмов для обработки массивов. Использование визуальных компонентов для разработки приложений.
· Литература (основная, дополнительная: [1][2][7][19][[20]
Тема8 Подпрограммы
· План Определение и активация подпрограмм. Виды подпрограмм. Последовательный вызов подпрограмм. Рекурсивный вызов подпрограмм. Передача параметров.
· Вопросы коллективного обсуждения: Реализация различных алгоритмов с помощью вызова подпрограмм. Создание рекурсии.
· Задания для самостоятельной работы: разработка типовых различных алгоритмов с использованием процедур.
Литература [1][2][7][12][23]
Тема9: Разработка приложений «Текстовый редактор», «Графический редактор», «Тестовая оболочка»
· План.. Работа с диалоговыми окнами для загрузки, сохранения и открытия файлов. Фильтры. Создание главного и контекстного меню. Поиск и замена в тексте. Форматирование абзаца и шрифта. Программирование выхода из программы с запросом на сохранение. Графика. Использование графических примитивов. Подключение панели инструментов. Выбор цвета кисти и заливки. Отмена последней команды пользователя. Работа с текстовыми файлами. Подключение модуля. Приложение с несколькими формами. Запись итогов тестирования в файл.
· Вопросы коллективного обсуждения: Вычисление элементарных математических функций с помощью представление функции в виде суммы ряда.
· Задания для самостоятельной работы: В приложении «Текстовый редактор» поставить строку состояния. Предусмотреть различную реакцию программы на выбор меню «сохранить», сохранить как..». В «Графическом редакторе» использовать примитивы для рисования закрашенных фигур. В «Тестовой оболочке» использовать возможность контролировать время тестирования.
· Литература (основная, дополнительная: [2][7][18]
Тема10: Структуры данных: общее понятие, реализация. Простейшие структуры данных: очередь, стек.
· План.. Дается общее понятие структуры данных как исполнителя, который организует работу с данными: хранение, добавление и удаление, поиск и т. п. Рассматриваются реализации одних структур на базе других, в частности, реализации на базе массива. Приводятся наиболее важные из простейших структур данных: очередь и стек, а также их непрерывные реализации на базе массива. Даются многочисленные примеры использования стека в программировании. Рассматривается обратная польская запись формулы (знак операции после агрументов) и способ ее вычисления на стековой машине.
· Вопросы коллективного обсуждения: Способы и определения различных структур данных.
· Задания для самостоятельной работы: реализация множества элементов на базе сбалансированных деревьев или хеш-функции.
· Литература (основная, дополнительная [1][2][4][6][15][16][18][23][24]
Тема 11 Терминология объектно-ориентированного программирования
· План Объектно-ориентированное программирование в терминах классов. Способ определять классы, конструировать производные классы, создавать объекты, принадлежащие классу, - экземпляры класса. Наследование как механизм, позволяющий производному классу наследовать структуру данных и поведение другого класса, а также наследовать поведение, объявленное в интерфейсах и абстрактных классах. Наследование. Множественное наследование, позволяющее производному классу наследоваться одновременно от нескольких классов (например, так реализован механизм наследования в С++). Наследуемый класс. Производный класс, наследующий структуру данных и поведение своего базового класса. Непосредственный базовый класс.
· Вопросы коллективного обсуждения: Определение данных (переменных) и поведение (методы) класса, базовый класс, простой, когда производный класс имеет только один наследуемый класс (например, так реализованы языки Java и Object Pascal). Наследование поведения, объявленного в интерфейсах и абстрактных классах.
· Задания для самостоятельной работы: разработка типовых различных алгоритмов
Литература [1][3][[13][6]
14. Словарь терминов (глоссарий)
C# (произносится си-шарп) — язык программирования, сочетающий объектно-ориентированные и аспектно-ориентированные концепции. Разработан в 1998—2001 годах группой инженеров под руководством Андерсa Хейлсбергa в компании Microsoft как основной язык разработки приложений для платформы . Компилятор с C# входит в стандартную установку самой. NET, поэтому программы на нём можно создавать и компилировать даже без инструментальных средств вроде Visual Studio
Java — объектно-ориентированный язык программирования, разрабатываемый компанией Sun Microsystems с 1991 года и официально выпущенный 23 мая 1995 года. Многие люди, говоря на русском, называют язык «Ява» по аналогии с географическим названием.
Visual () — это объектно-ориентированный язык программирования, который можно рассматривать как очередной виток эволюции Visual Basic (VB), реализованный на платформе .
Алгоритм - это последовательность команд, предназначенная исполнителю, в результате выполнения которой он должен решить поставленную задачу.
Блок-схе́ма — в программировании — графическое представление программы или алгоритма с использованием стандартных графических элементов (прямоугольников, ромбов, трапеций и др.), обозначающих команды, действия, данные и т. п.
Запись (record) — структура данных, элементы возможно разных типов, доступ произвольный.
Императи́вное программи́рование — это парадигма программирования, которая, в отличие от декларативного программирования, описывает процесс вычисления в виде инструкций, изменяющих состояние программы. Императивная программа очень похожа на приказы, выражаемые повелительным наклонением в естественных языках, то есть это последовательность команд, которые должен выполнить компьютер
Индекс массива — целое число, либо значение типа, приводимого к целому, указывающее на конкретный элемент массива.
Инкапсуля́ция — свойство языка программирования, позволяющее объединить данные и код в объект и скрыть реализацию объекта от пользователя. При этом пользователю предоставляется только спецификация (интерфейс) объекта. Пользователь может взаимодействовать с объектом только через этот интерфейс.
Инструкция или Оператор (англ. statement) — наименьшая автономная часть языка программирования; команда. Программа обычно представляет собой последовательность инструкций.
Интерфе́йс (от лат. inter — между и лат. face — поверхность) — это семантическая и синтаксическая конструкция в коде программы, используемая для специфицирования услуг, предоставляемых классом или компонентом.
Класс - структура данных представляющая собой объектный тип данных, внешне похожа на типы данных процедурно-ориентированных языков, такие как структура в языке Си или запись в Паскале или QuickBasic. При этом элементы такой структуры (члены класса) могут сами быть не только данными, но и методами (то есть процедурами или функциями
Логический (булевый) тип данных, имеющих два возможных значения, иногда называемых правдой и ложью. Присутствует в подавляющем большинстве языков программирования как самостоятельная сущность или реализуется через численный тип. В подавляющем большинстве языков за истину полагается единица, за ложь ноль.
Массив (в некоторых ЯП также таблица, ряд) — простая статическая структура данных, предназначенная для хранения набора единиц данных, каждая из которых идентифицируется индексом или набором индексов.
Метод в объектно-ориентированном программировании — программный код, реагирующий на определенные сообщения.
Насле́дование — один из четырех важнейших механизмов объектно-ориентированного программирования (наряду с Абстракцией, Инкапсуляцией и Полиморфизмом), позволяющий описать новый класс на основе уже существующего (родительского), при этом свойства и функциональность родительского класса наследуются новым классом.
Объе́ктно-ориенти́рованное программи́рование (ООП) — парадигма программирования, в которой основными концепциями являются понятия объектов и классов
Опера́ция — конструкция языков программирования, аналогичная по записи математическим операциям, то есть специальный способ записи некоторых действий. Наиболее часто применяются арифметические, логические и строковые операции. В отличие от функций, операции часто являются базовыми элементами языка и обозначаются различными символами пунктуации, а не алфавитно-цифровыми; они имеют специальный инфиксный синтаксис и нестандартные правила передачи аргументов. Терминология, однако, несколько отличается от языка к языку.
О́чередь — структура данных с дисциплиной доступа к элементам «первый пришёл — первый вышел» (FIFO, First In — First Out). Добавление элемента (принято обозначать словом enqueue) возможно лишь в конец очереди, выборка — только из начала очереди (что принято называть dequeue, при этом выбранный элемент из очереди удаляется).
Паради́гма программи́рования — это парадигма, определяющая стиль программирования, иначе говоря — некоторый цельный набор идей и рекомендаций, определяющих стиль написания программ.
Паска́ль (англ. Pascal) — язык программирования общего назначения. Был создан Николаусом Виртом в 1970, после его участия в работе комитета разработки стандарта языка Алгол, как язык для обучения процедурному программированию. Название языку дано в честь выдающегося французского математика, физика, литератора и философа Блеза Паскаля.
Переме́нная в традиционных (императивных) языках программирования — поименованная либо адресуемая иным способом область памяти, имя или адрес которой можно использовать для осуществления доступа к данным, находящимся в переменной (по данному адресу).
Подпрограмма (англ. subprogram) — поименованная или иным образом идентифицированная часть компьютерной программы, содержащая описание определённого набора действий. Подпрограмма может быть многократно вызвана из разных частей программы. В языках программирования для оформления и использования подпрограмм существуют специальные синтаксические средства.
Полиморфи́зм — взаимозаменяемость объектов с одинаковым интерфейсом
Присва́ивание (иногда присвое́ние) — механизм в программировании, позволяющий динамически изменять связи объектов данных (как правило, переменных) с их значениями.
Простой тип - тип данных, объекты (переменные или постоянные) которого не имеют доступной программисту внутренней структуры. Как правило, к простым относятся числовые, символьный, логический и некоторые другие.
Рекурси́вная фу́нкция (от лат. recursio — возвращение) — это функция аргумента, которая в своей записи содержит себя же.
Свойство - составляющая часть объекта, доступ к которой осуществляется программистом, как и к переменным объекта. Однако свойства могут быть доступны только для чтения или записи. Свойство является интерфейсом доступа к соответствующей переменной объекта. Свойство может быть просто другим именем переменной (поля) объекта, тогда компилятор подставляет на место свойства переменную. Если это не так - то при обращении программиста к свойству вызывается определённый метод, который выполняет определённые операции с объектом. В некоторых языках при обращении к свойству всегда вызывается метод, который, в простейшем случае, просто выполняет запись или чтение определённой переменной объекта.
Сложный (составной) тип — тип данных, объекты (переменные или постоянные) которого имеют внутреннюю структуру, доступную программисту.
Событие — это сообщение программного обеспечения, которое указывает, что произошло.
Спи́сок — упорядоченная последовательность элементов данных, воспринимаемая как особая контейнерная структура данных. В качестве элементов списка могут выступать любые другие элементы данных, в том числе и сами списки.
Среда визуальной разработки — среда разработки программного обеспечения, в которой наиболее распространенные блоки программного кода представлены в виде графических объектов. Применяются в основном для создания прикладных программ и разработки графического интерфейса пользователя (GUI).
Стек (англ. stack — стопка) — структура данных с методом доступа к элементам LIFO (Last In — First Out, последним пришел — первым вышел). Чаще всего принцип работы стека сравнивают со стопкой тарелок: чтобы взять вторую сверху, нужно взять верхнюю.
Структура данных — это способ хранения данных в компьютере, обеспечивающий их эффективное использование
Тип данных (встречается также термин вид данных) — понятие из теории программирования. Тип данных определяет множество значений и операций, которые могут быть применены к этим значениям.
Тип переменной определяет множество значений, которые могут быть ей присвоены и операции, которые могут быть с нею произведены. Он либо фиксирован в момент объявления переменной и соответствует одному из типов данных, предоставляемых языком программирования (статическая типизация), либо в каждый момент соответствует типу тех данных, что содержит переменная (динамическая типизация).
Транслятор - Специальная программа, выполняющая перевод с языка высокого уровня, т. е. языка, не зависящего от конкретной архитектуры на язык машинных команд.
Условный переход — команда программируемому вычислительному устройству на изменение порядка выполнения программы в соответствии с результатом проверки некоторого условия. Наиболее часто условный переход имеет две стадии: на первой происходит сравнение между собой некоторых величин, определяющих условие перехода, на второй выполняется сам переход.
Файл (file) — структура данных, элементы однотипные, доступ последовательный (примечание: не путать с дисковым файлом!).
Функциона́льное программи́рование — раздел дискретной математики и методология программирования, в которой процесс вычисления трактуется как вычисление значений функций в математическом понимании (то есть тех, чей единственный результат работы заключается в возвращаемом значении, или другими словами, вычисление которых не имеет побочного эффекта). Противопоставляется парадигме императивного программирования, в которой исполнителю программы предписывается последовательность выполняемых действий, в то время, как в функциональном программировании способ решения задачи описывается при помощи зависимости функций друг от друга (в том числе возможны рекурсивные зависимости), но без указания последовательности шагов.
Фу́нкция — в программировании — один из видов подпрограммы. Особенность, отличающая её от другого вида подпрограмм — процедуры, состоит в том, что функция возвращает значение, а её вызов может использоваться в программе как выражение
Цикл — разновидность управляющей конструкции в высокоуровневых языках программирования, предназначенная для организации многократного исполнения набора инструкций. Также циклом может называться любая многократно исполняемая последовательность инструкций, организованная любым способом (например, с помощью условного перехода).
Язы́к программи́рования — формальная знаковая система, предназначенная для описания алгоритмов в форме, которая удобна для исполнителя (например, компьютера
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 |


