
- •Вопрос 1. Интуитивное понятие алгоритма.
- •Свойства алгоритмов.
- •Понятие исполнителя алгоритма.
- •Вопрос 2. Словесный способ представления алгоритмов.
- •Вопрос 3. Графический способ представления алгоритмов.
- •Вопрос 4. Название элементов блок-схем, их геометрическое представление, переход от одного блока к другому.
- •Вопрос 5. Базовые структуры блок-схем, название и их геометрическое представление.
- •Вопрос 6. Выражение базовой структуры «цикл с постусловием» и базовой структуры «цикл с параметром» через базовую структуру «цикл с предусловием».
- •Вопрос 7. Понятие базисного множества базовых структур. Понятие структурированной блок-схемы.
- •Вопрос 8. Виды блок-схем.
- •Вопрос 9. Понятие транслятора, компилятора и интерпретатора.
- •Вопрос 10. «Модель – алгоритм - программа» - методологический принцип решения задач на компьютере.
- •Вопрос 11. Алфавит языка Паскаль, служебные слова и идентификаторы.
- •Вопрос 12. Константы. Имена констант, типы констант, их объявление в программе.
- •Вопрос 13. Переменные, имена переменных, типы переменных, их объявление в программе.
- •Вопрос 14. Простые стандартные типы.
- •Вопрос 15. Стандартные функции языка Паскаль, тип значения аргументов и тип значения функции.
- •Вопрос 16. Арифметические операции, арифметические выражения, типы значений арифметических выражений.
- •Вопрос 17. Операции отношений, простые и сложные логические выражения.
- •Вопрос 18. Структура программы, ее три части, характеристика каждой части программы. Программа на языке программирования Pascal может состоять из трех разделов:
- •Вопрос 19.Процедура ввода данных.
- •Вопрос 20.Процедура вывода данных.
- •Вопрос 21.Форматы вывода данных.
- •Вопрос 22.Оператор присваивания, формат записи, порядок работы, типы операндов, графическое представление.
- •Вопрос 23 .Оператор неполного ветвления, формат записи, представление в виде базовой структуры, порядок работы.
- •I f условие Then Оператор 1;
- •Вопрос 24.Оператор полного ветвления, формат записи, представление в виде базовой структуры, порядок работы.
- •Вопрос 25.Оператор выбора, формат записи, представление в виде базовой структуры, порядок работы.
- •Вопрос 27.Оператор цикла с предусловием, формат записи, представление в виде базовой структуры, порядок работы.
- •Вопрос 28.Оператор цикла с постусловием, представление в виде базовой структуры, порядок работы.
- •Вопрос 29.Оператор цикла с известным числом повторений, формат записи, представление в виде базовой структуры, порядок работы, типы операндов.
- •Вопрос 30.Процедуры пользователя, формат объявления процедуры пользователя.
- •Вопрос 31.Формальные и фактические параметры процедуры пользователя, обращение к процедуре пользователя.
- •Вопрос 32.Глобальные и локальные параметры процедуры пользователя.
- •Вопрос 33.Функции пользователя, обращение к функции пользователя.
- •Вопрос 34.Понятие одномерного массива и элемента массива, формат объявления одномерного массива в программе.
- •Вопрос 35.Задание элементов одномерного массива с помощью функции случайных чисел и путем ввода значений с клавиатуры.
- •Вопрос 36,37Способы вывода элементов одномерного массива на экран: в строку, в столбик.
- •Вопрос 42.Понятие двумерного массива и его элемента, формат объявления двумерного массива.
- •Вопрос 43.Задание элементов двумерного массива с помощью случайных чисел и путем ввода с клавиатуры.
- •Вопрос 44.Вывод на экран элементов двумерного массива в виде матрицы.
- •Вопрос 46.Понятия прямоугольного и квадратного двумерного массива, свойства элементов главной и побочной диагоналей.
- •Вопрос 49.Строковый тип данных, формат объявления строковой перемнной.
- •Вопрос 50.Операции над строковыми переменными.
- •Вопрос 51.Тип записи: понятие поля, понятие записи, формат объявления записи.
- •52.1.Ввод значений записи.
- •52.2.Вывод записи на экран.
- •52.3.Оператор над записями.
- •53.Файловый тип данных: виды файлов, формат объявления файлового типа.
- •2.Виды файлов
- •Текстовые
- •55.Запись данных в файл данных.
- •56.Вывод данных из файла данных на экран.
Вопрос 9. Понятие транслятора, компилятора и интерпретатора.
Уровни языков программирования.
Если язык программирования ориентирован на конкретный тип процессора и учитывает его особенности, то он называется языком программирования низкого уровня. Низкий уровень в данном случае не означает плохой. Имеется в виду, что операторы языка очень близки к машинному коду. Языком низкого уровня является язык ассемблера, который просто представляет каждую команду машинного кода, но не в виде чисел, а с помощью символьных условных обозначений, называемых мнемониками. Так как наборы инструкций для каждой модели процессора отличаются, то конкретной компьютерной архитектуре соответствует свой язык ассемблера, и написанная на нем программа может быть использована только в компьютерах с такой моделью процессора.
С помощью языков низкого уровня создаются очень эффективные и компактные программы, так как разработчик программы получает доступ ко всем возможностям процессора. С другой стороны, при этом требуется очень хорошо понимать устройство компьютера и затрудняется отладка больших приложений. Подобные языки обычно применяются для написания драйверов устройств, модулей стыковки с нестандартным оборудованием.
Языки программирования высокого уровня значительно ближе и понятнее человеку, нежели компьютеру. Особенности конкретных компьютерных архитектур в них не учитываются, поэтому создаваемые программы легко переносимы на другие платформы. Разрабатывать программы на языках высокого уровня значительно проще и допускается меньше ошибок. К языкам высокого уровня можно отнести такие Фортран (Fortran), Бейсик (Basic), Паскаль (Pascal), Си (C), Си++(C++), Джава (Java) и многие другие.
Язык программирования Паскаль был разработан в 1968-1971 годах Никлаусом Виртом. Язык был назван в честь выдающегося французского математика и философа Блеза Паскаля (1623 – 1662) и первоначально создавался для обучения программированию как систематической дисциплине, однако вскоре он стал широко использоваться в профессиональном программировании.
Поскольку текст программы, записанный на языках программирования высокого уровня, непонятен компьютеру, требуется перевести его на машинный язык. Такой перевод программы с языка программирования на язык машинных кодов называется трансляцией, а выполняется специальными программами – трансляторами.
Любой транслятор решает следующие основные задачи:
1.Анализирует транслируемую программу, в частности, определяет, содержит ли она синтаксические ошибки.
2.Генерирует выходную программу на языке машинных команд.
3.Распределяет память для программы (в простейшем случае это заключается в назначении каждому фрагменту программы, переменным, константам, массивам и другим объектам программы адресов памяти).
Существует два вида трансляторов:
1.Интерпретатор – это транслятор, производящий пооператорный перевод в машинные коды, запись в память и выполнение этого одного оператора. Таким образом, интерпретатор переводит в машинные коды один оператор, если нет ошибок, то выполняет его, и только после этого переходит к следующему оператору.
2. Компилятор преобразует (транслирует) всю программу целиком в модуль на машинном языке, после чего программа записывается в память компьютера и только потом исполняется.
Современные системы программирования.
Трудоемкость создания сложных компьютерных программ и разнообразие средств, используемых в процессе разработки программы, компиляции и отладки, привело в 80-х годах ХХ века к созданию интеграции этих средств. В те годы фирма Borland International (США) разработала систему Тurbo Pascal, которую называют интегрированной средой программирования, так как она объединяет в себе возможности ранее разрозненных средств, используемых при разработке программ:
1.Редактора текстов программ, который позволяет вносить исправления в текст программы, выделять отдельные фрагменты программы, копировать эти фрагменты, удалять, восстанавливать, выделять цветом отдельные слова, поддержка мыши, возможность открытия окон, которые можно перемещать и изменять в размере и т.п.
2.Компилятора программ.
3.Отладчика программ.
4.Справочной системы языка.