
- •1.Основные понятия: программирование, данные, программа, процесс, оператор, алгоритм. Краткая характеристика развития программирования.
- •2.Основные этапы решения задач на эвм.???
- •3.Алгоритм, свойства алгоритма. Алгоритмический язык программирования. Способы записи алгоритма.
- •4. Синтаксис и семантика языка программирования??. Структура программы на языке Pascal.
- •5.Основные символы языка Pascal. Идентификаторы, константы, переменные.
- •6.Скалярные типы данных.? Вроде как тоже стандартные
- •7.Стандартные типы данных. Надо уточнить
- •8.Выражения. Операторы. Составной оператор.
- •9.Оператор условия if.
- •10.Оператор выбора case.
- •11.Оператор цикла For.
- •12.Оператор цикла Repeat.
- •13.Оператор цикла While.
- •14.Процедуры и функции. Основные понятия.
- •15.Подпрограммы в языке Pascal.
- •16.Параметры подпрограмм.
- •17.Принцип локализации. (поискать)
- •18.Массив как структура данных.
- •19.Строки.
- •1 . Операция сравнения (так как в строках определён порядок, то для их возможно сравнить).
- •2. Операция обращения к элементу строки
- •20.Записи.
- •Запись с вариантной частью
- •21.Множества.
- •22.Файлы. Типизированные файлы.
- •Описание типизированных файлов
- •23.Файлы. Текстовые файлы.
- •Текстовые файлы
- •Пробельные символы
- •24.Файлы. Нетипизированные файлы.
- •25.Рекурсии.
- •26. Программирование графики. Графика в Pascal
- •Действия с пером.
- •Действия с кистью.
- •Действия со шрифтом
- •Действия с рисунками.
- •Действия с графическим окном
- •Задание режимов вывода
- •27.Создание модулей.
- •28.Сортировки массивов. Пузырьковая сортировка.
- •29.Сортировки массивов. Шейкерная сортировка.
- •30.Сортировки массивов. Сортировка Шелла.
- •31.Сортировки массивов. Быстрая сортировка.
- •32.Сортировки массивов. Сортировка прямыми (простыми) вставками.
- •33.Сортировки массивов. Сортировка бинарными вставками.
- •34.Сортировки массивов. Сортировка прямыми (простыми) вставками с барьером.
- •35.Сортировка массивов. Пирамидальная сортировка.
- •36.Динамические структуры данных. Стек, его применение. Операции над элементами стека.
- •37.Динамические структуры данных. Очередь, ее применение. Операции над элементами очереди.
- •38.Динамические структуры данных. Списки, их применение. Операции над элементами списка, их реализация.
- •Формирование списка
- •Просмотр списка
- •Удаление элемента из списка
- •39.Динамические структуры данных. Деревья, их применение.
- •40.Тип данных указатель.
9.Оператор условия if.
- предназначен для ветвления программы на два направления.
Условный оператор позволяет проверить некоторое условие и в зависимости от результатов проверки выполнить то или иное действие.
Рассмотрим четыре варианта записи оператора IF:
If <условие> then P1 else P2;
If <условие> then P1;
If (<условие1>) or (<условие2>) then P1 else P2;
If (<условие1>) and (<условие2>) then P1 else P2;
где <условие>,<условие1>, <условие2> - переменные логического типа. Р1, Р2 - простые или составные операторы.
10.Оператор выбора case.
Оператор case работает следующим образом. Сначала вычисляется значение выражения-селектора, затем в последовательности операторов отыскивается такой, которому предшествует константа, равная вычисленному значению. Если ни одна из констант не равна вычисленному значению, выполняется оператор, стоящий за словом else. Если слово else отсутствует, выполняется оператор, находящийся за словом end, т. е. первый оператор за границей case.
Селектор должен относиться к одному из целочисленных типов (находящихся в диапазоне — 32768..32767): булевскому, литерному или пользовательскому
11.Оператор цикла For.
for
for
идентификатор
for
идентификатор
for
:=
идентификатор
for

to
Цикл For имеет счётчик цикла, а так же начальное и конечное значение счетчика цикла. Кроме того, с помощью зарезервированного слова downto можно указать, что цикл идет в обратном направлении. Счетчиком цикла может быть переменная любого порядкового типа. При переходе к следующей итерации цикла к счетчику автоматически применяется функция succ (pred). В случае, когда начальное значение счетчика цикла превышает конечное, тело цикла не выполняется ни разу.
Внутри цикла for ни в коем случае не следует изменять ни один из его параметров и пытаться использовать значение счетчика цикла после выхода из него.
Применяется, Когда число повторений известно заранее.
12.Оператор цикла Repeat.
Repeat выполняется до тех пор пока условие, находящееся в конце цикла после зарезервированного слова until не станет равно true.
В случае наличия в теле цикла нескольких операторов цикл repeat не нуждается в операторных скобках begin и end. Repeat называется циклом с постусловием, так как логическое условие, проверяемое в нем, находится в конце цикла
Цикл выполнится хотя бы один раз. Употребляют когда заведомо известно, что хотя бы один раз тело цикла должно выполнится.
13.Оператор цикла While.
Тело цикла выполняется, пока логическое в начале цикла равно true, в связи с чем в теле цикла должен стоять оператор, который может привести к изменению этого условия, иначе произойдет зацикливание. Цикл называется циклом с предусловием, так как логическое условие цикла проверяется перед входом в цикл. Используется , когда вполне возможно, что тело цикла ни разу не выполнится.
14.Процедуры и функции. Основные понятия.
Кроме стандартных процедур и функций Pascal позволяет оформлять вспомогательные алгоритмы в отдельные подпрограммы (собственные процедуры и функции). С математической точки зрения это замкнутая часть целого, которую можно реализовать как самостоятельную структуру. Она имеет все компоненты основной программы (имя, const, type, var, может включать свои вложенные процедуры и функции). В языке подпрограммы делятся на два вида – процедуры и функции.
Объявление
функции:
function <имя функции>(<формальные параметры функции>): тип результата функции;
function <имя функции>(<формальные параметры функции>): тип результата функции;
forward;
var <имя локальной переменной: тип локальной переменной>
begin
<описание функции>
end;
Подпрограммы объявляются и описываются в начале программы до begin. В отличии от констант объявление подпрограммы может быть оторвано от её описания в этом случае используется forward. Описание, оторванное от объявления, обозначенное forward может идти только после объявления.
процедуры:
procedure <имя процедуры>;
procedure <имя процедуры>;
forward;
var <имя локальной переменной: тип локальной переменной>
begin
<описание процедуры>
end;
Описание подпрограммы производится по следующему шаблону:
[uses <имя подключаемого модуля>];
[label <список меток>];
[const <имя> = <значение>];
[type <имя>:<тип>];
[var <имя>:<тип>];
[procedure <имя>];
[function <имя>(<параметры>:<тип параметров>):<тип выходных данных>]
begin
<операторы>
end;
Если используется forward, описывается директория function/procedure. Описание двух подпрограмм не могут пересекаться. Каждый блок должен быть логически завершённым, однако внутри любой подпрограммы могут быть описаны другие процедуры или функции такие называются вложенными. В заголовке подпрограммы при её объявлении указывается список параметров, которые будут передаваться в подпрограмму извне. Поэтому внутри подпрограммы эти параметры могут быть использованы, но их имена не должны совпадать с именами из раздела var данной подпрограммы.
Одно отсутствие входных параметров не означает, что при каждом вызове подпрограмма будет выполнять одни и те же действия, поскольку внутри неё видны и доступны глобальные переменные. В заголовке подпрограммы можно указывать не только простые типы данных.