- •Алгоритм. Свойства алгоритма.
- •2. Алфавит языка Pascal.
- •3. Структура Pascal-программы.
- •4. Идентификаторы. Переменные.
- •5. Константы. Виды констант.
- •6. Типы данных языка Pascal
- •7. Порядковые типы данных и стандартные подпрограммы для их обработки
- •8. Операции. Арифметические операции. Арифметические выражения
- •9. Стандартные арифметические функции. Порядок вычислений.
- •10. Преобразование типов данных. Стандартные функции преобразования типов данных.
- •11. Ввод с консоли. Вывод на консоль. Форматированный вывод.
- •12. Комментарии. Простейшие операторы языка Pascal.
- •13. Условный оператор if.
- •14. Оператор выбора case.
- •15. Метки и безусловный переход. Операторы break и continue.
- •16. Оператор циклов for-to.
- •17. Оператор циклов for-downto.
- •20. Массивы. Описание переменных размерностей. Обращение к компонентам массива.
- •21. Многомерные массивы. Задание массива константой.
- •22. Символы. Символ-константа. Операции с символами. Стандартные функции для работы с символами.
- •23. Строки. Строка-константа. Операции со строками. Стандартные функции и процедуры обработки строк.
- •24. Множества. Множество-константа. Операции со множествами.
- •25. Функции. Объявление функции. Описание функции. Возвращаемые значения. Вызов функции.
- •26. Функции. Способы постановки аргументов.
- •27. Процедуры. Объявление процедуры. Описание процедуры. Возвращаемое значение. Вызов процедуры.
- •28. Процедуры. Способы постановки аргументов.
- •29. Записи. Описание. Задание записей константой. Доступ к полям записи.
- •30. Записи. Оператор with.
- •31. Файлы. Разновидность файлов. Описание файлов.
- •32. Текстовые файлы. Назначение текстовых файлов. Открытие и закрытие файла.
- •33. Текстовые файлы. Назначение текстовых файлов. Запись в файл. Считывание из файла.
- •34. Типизированные файлы. Описание типизированных файлов. Назначение типизированных файлов. Открытие и закрытие файлов.
- •35. Типизированные файлы. Назначение типизированных файлов. Запись в файл. Считывание из файла. Поиск в типизированном файле.
- •36. Нетипизированные файлы. Описание нетипизированных файлов. Назначение нетипизированных файлов. Открытие и закрытие файлов.
- •37. Нетипизированные файлы. Назначение нетипизированных файлов. Запись в файл. Считывание из файла. Поиск в нетипизированном файле.
- •38. Модульность программ. Стандартные модули языка Pascal. Подключение модулей.
- •39. Структура модуля. Секция внешних связей. Секция реализации. Секция инициализации.
- •40. Взаимодействие модулей. Компиляция модулей.
14. Оператор выбора case.
Оператор case позволяет сделать выбор между несколькими вариантами:
case <переключатель> of
<список_констант> : <один_оператор>;
[<список_констант> : <один_оператор>;]
[<список_констант> : <один_оператор>;]
[else <один_оператор>;]
end;
Существуют дополнительные правила, относящиеся к структуре этого оператора:
Переключатель должен относиться только к порядковому типу данных, но не к типу longint.
Переключатель может быть переменной или выражением.
Список констант может задаваться как явным перечислением, так и интервалом или их объединением.
Повторение констант не допускается.
Тип переключателя и типы всех констант должны быть совместимыми.
program C;
var symbol: char;
writeln(‘Введите символ’);
readln(symbol);
case symbol of
'a'..'z', 'A'..'Z' : writeln('Это латинская буква');
'а'..'я', 'А'..'Я' : writeln('Это русская буква');
'0'..'9' : writeln('Это цифра');
' ',#10,#13,#26 : writeln('Это пробельный символ');
else writeln ('Это служебный символ');
end;
15. Метки и безусловный переход. Операторы break и continue.
Метка помечает какое-либо место в тексте программы. Метками могут быть числа от 0 до 9999 или идентификаторы, которые в этом случае уже нельзя использовать для каких-либо иных нужд. Все метки должны быть описаны в специальном разделе label:
label <список_всех_меток_через_запятую>;
Меткой может быть помечен любой оператор программы
<метка>: <оператор>;
Любая метка может встретиться в тексте программы только один раз. Используются метки только операторами безусловного перехода goto:
goto <метка>;
Это означает, что сразу после оператора goto будет выполнен не следующий за ним оператор (как это происходит в обычном случае), а тот оператор, который помечен соответствующей меткой.
break и continue
Существует возможность прервать выполнение цикла (или одной его итерации), не дождавшись конца его (или ее) работы.
break прерывает работу всего цикла и передает управление на следующий за ним оператор.
continue прерывает работу текущей итерации цикла и передает управление следующей итерации (цикл repeat-until) или на предшествующую ей проверку (циклы for-to, for-downto, while).
16. Оператор циклов for-to.
Оператор цикла повторяет некоторую последовательность операторов заданное число раз, которое может быть определено и динамически - уже во время работы программы.
Общий вид оператора for-to:
for i:= first to last do <оператор>;
Счетчик i (переменная), нижняя граница first (переменная, константа или выражение) и верхняя граница last (переменная, константа или выражение) должны относиться к эквивалентным порядковым типам данных.
Цикл for-to работает следующим образом:
вычисляется значение верхней границы last;
переменной i присваивается значение нижней границы first;
производится проверка условия, что i<=last;
если условие истинна, то выполняется <оператор>;
значение переменной i увеличивается на единицу;
пункты 3-5, составляющие одну итерацию цикла, выполняются до тех пор, пока i не станет строго больше, чем last; как только это произошло, выполнение цикла прекращается, а управление передается следующему за ним оператору.
Из этой последовательности действий можно понять, какое количество раз отработает цикл for-to в каждом из трех случаев:
first < last: цикл будет работать last-first+1 раз;
first = last: цикл отработает ровно один раз;
first > last: цикл вообще не будет работать.
