Современное программирование предлагает пользователям использовать самые разнообразные языки программирования. Но основой основ является Паскаль.Данный язык был разработан в 1971 году в Университете Цюриха профессором Никлаусом Виртом. Его предназначение изначально было учебным. Имея достаточно четко выраженную структуру и систему предоставления данных Паскаль имел ограничения в функциях ввода - вывода, при создании подпрограмм. |
---|
Выражения |
---|
Все вычисления и другие преобразования данных в программе записываются в виде выражений. Они обычно включают несколько операций, которые выполняются в порядке приоритетности. Различают: 1. Арифметические операции: +(сложение), -(вычитание), *(умножение), /(деление вещественное), div (деление целочисленное), mod (остаток целочисленного деления) - все эти операции применяются к вещественным и целым числам, результат - число. Запись выражений арифметического типа выполнятеся в строку. Порядок выполнения действий регламентируется круглыми скобками. Особое внимание уделяется выражениям, содержащим операции различных приоритетов. Например: a+b/c Запсь предполагает, что сначала b/c, затем прибавляется a. (a+b)/c*d Запись предполагает, что сумма (a+b) делится на c, затем умножается на d. Правила выполнения операций в арифметических выражениях: А. Операции "целочисленного деления" и определения остатка от деления применимы только к операндам целых типов. Например: 6div4 = 1, а 6mod4 = 2. Если в операции участвуют переменные, то они должны быть объявлены как целые, например: Var i, n:integer;... n mod 2; ... Для получения при делении целых значений результата с точностью до дробной части, нужно использовать операцию вещественного деления. Например: 6/4 = 1.5 Б. При выполнении арифметических действий над числами различных типов выполняется неявное преобразование типов:
2. Операции отношения: >(больше),<(меньше), =(равно), <>(не равно), >=(не меньше), <=(не больше) - эти операции применяют к числам, символам, символьным строкам и другим типам данных, результат - значение логического типа: true (если отношение истинно), false (в противном случае).
Данные операции определены для вещественных и целых чисел, логических значений, кодов символов, строк и множеств. Следует помнить, что из - за ограниченной разрядной стеки вещественные числа представляются в памяти неточно, следовательно проверка равенства или неравентсва должна выполняться с некоторым допуском. Например: (x-y)>1e-10; {вместо x<>y} (x-y)<1e-10; {вместо x=y} Если допуск не указан, он определяется автоматически, исходя из количества значащих цифр в представлении числа и может оказаться слишком строгим для задачи с неточными данными или методами решения. 3. Логические операции: and (и), or (или), xor (исключающее или), not (не) - данные операции выполняются с логическими переменными и константами, результат - значение логического типа. Логические операции выполняются над значениями типа boolean. Если в выражении в качестве операндов используют результаты операций отношения, которые имеют более низкий приоритет, то необходимы скобки. Например: записать логическое выражение, которое должно быть истинно, если x попадает в интервал [a; b]. Выражение запишется таким образом: (x>=a) and (x<=b) 4. Поразрядные операции: and (и), or (или), xor (исключающее или), not (не), shr (сдвиг вправо), shl (сдвиг влево) - операции с целыми числами, результат - целое число. Данные операции выполняются над целыми числами. Второй операнд операций сдвига определяет количество двоичных разрядов, на которое необходимо сдвинуть первый операнд. Например: 5shl4 Число 5 в своем внутреннем двоичном представлении сдвигатеся влево на 4 двоичных разряда, что соответствует умножению числа 24=16. Следовательно, результат данного выражения - число 80. 5. Строковые операции: +(сцепление строк) - выполняются над символами и строками, результат - строка. 6. Операции над множествами: +(объединение), -(дополнение), *(пересечение) - результат - множество. In (определение принадлежности элемента множетсву) - результат - значение логического типа. 7. Операции над указателями: @ (определение адреса программного объекта) - результат - адрес.
Для изменения порядка выполнения операций, в выражении используются круглые скобки, также допускается использование стандартных и определенных программистом функций. Им присваивается высший приоритет. |
---|