- •Программирование на языке высокого уровня
- •230102 - Автоматизированные системы обработки информации и управления
- •230105 – Программное обеспечение вычислительной техники и автоматизированных систем
- •1. Цели и задачи дисциплины
- •2. Рабочая программа
- •3. Программа и методические указания
- •3.1. Введение в визуальное программирование
- •3.2. Введение в язык Паскаль
- •3.3. Типы данных
- •3.4. Операторы
- •3.5. Ввод/вывод данных.
- •3.6. Ветвления
- •3.7. Циклы
- •3.8. Массивы
- •4. Какие из приведенных операций допустимы в Паскале, если дано такое объявление переменных:
- •3.9. Подпрограммы
- •4. Допустимо ли обращение к функции аналогичное обращению к процедуре?
- •3.10. Основы объектно-ориентированного программирования
- •4. Для чего нужны абстрактные методы?
- •3.11. Событийно-ориентированный подход
- •4. Какие манипуляции на форме (Form1) приводят к автоматическому созданию события?
- •4.Темыпрактических занятий.
- •5. Задания на контрольные работы
- •5.1. Методические указания
- •5.2.Контрольная работа № 1.
- •5.3.Контрольная работа № 2.
- •6. Задания на лабораторные работы.
- •6.1 Лабораторная работа № 1.
- •6.2 Лабораторная работа № 2.
- •6.3 Лабораторная работа № 3.
- •6.4 Лабораторная работа № 4.
- •6.5 Лабораторная работа № 5.
- •7. Методические указания к курсовому проектированию
- •7.1 Общие требования к курсовому проекту
- •7.2 Построение пояснительной записки
- •8. Учебно-методические материалы по дисциплине.
- •Приложение
3.4. Операторы
Оператор – это определенный в языке символ, при помощи которого подвыражения (называемые операндами) комбинируются в более сложные выражения. Большинство операторов обозначаются специальными символами, такими как *, +, -, &, / и т.п. Простейшим оператором является оператор сложения: x+y.
Оператор имеет один или более входных операндов и только одно выходное значение. Синтаксис операторов не требует явного указания круглых скобок. Если в выражении используется несколько операторов, то последовательность их выполнения определяется на основе их приоритета.
Все операторы языка Паскаль делятся на несколько групп: арифметические, булевы, логические, строковые операторы, операторы сравнения, операторы указателей и т.д. Операторы также делятся на унарные (применяемые к одному операнду) и бинарные (применяемые к двум операндам), при этом они имеют свой приоритет.
Арифметическиеоператоры, действующие на целочисленные и вещественные (действительные) операнды, включают в себя унарные и бинарные операторы. К унарным относятся унарный плюс (+) и унарный минус (-). К бинарным – операторы сложения (+), вычитания(-), умножения (*), деления (/), деления на цело (div), остатка от целочисленного деления (mod). При операциях с целочисленными операндами результат имеет типInteger. Если операнды имеют тип поддиапазона целочисленного типа, то действия над ними выполняются как над целыми числами.
Булевыоператоры манипулируют с операндами любого булева типа и возвращают значение типаBoolean. К этому классу относятся следующие операторы: отрицание (not), конъюнкция (and), дизъюнкция (or) и исключающая дизъюнкция (xor). Операции, выполняемые с помощью булевых операторов, подчиняются правилам булевой логики. Например, выражениеXand Yимеет значениеTrue (истина), в том и только в том случае, если иXиYимеют значениеTrue.
Компилятор Delphiподдерживает два режима оценки для операторовandиor: режим полного вычисления и режим сокращенного вычисления (по умолчанию).
Логическиеоператоры выполняют поразрядные операции с целочисленными операндами: поразрядное отрицание (not), поразрядная конъюнкция (and), поразрядная дизъюнкция (or), поразрядная исключающая дизъюнкция (xor), поразрядный сдвиг влево (shl), поразрядный сдвиг вправо (shr). Здесь имеют место следующие базисные правила:
- результат операций notи поразрядного сдвига имеет тот же тип, что и операнд;
- результат операций and,orилиxorимеет целочисленный тип с минимальным диапазоном, включающим все возможные значения типов обоих операндов.
К строковымоператорам относятся оператор конкатенации (+), соединяющий две строки, и операторы сравнения (=, <>, <, >, <=, >= ). Результат операции конкатенации совместим с любым строковым типом.
Операторы сравненияявляются бинарными операторами. Они позволяют выполнить соотношение операндов. В качестве операндов можно использовать любые выражения целого или действительного типа, указатели или множества. Результатом выполнения оператора сравнения является булево значение: если выражение верно, тоTrue, иначе –False. При этом операнды должны быть одного типа или быть совместимы. Исключение из этого правила – сравнение значений целых и вещественных типов. Сравнение строк осуществляется посимвольно, в точном соответствии с расширенным набором символовASCII[1-3].
Вопросы для самопроверки:
1. Приведите примеры выполнения всех операторов.
2. Почему при записи формул их «вытягивают» в линию? Почему знак умножения всегда указывают явно (a*k, но не ak)?
3. Определить значение X после выполнения операторов:
x := 10; x := x+3;
4. Вычислить значения выражений: 20 div 6; 20 mod 6; round(6.9);