Этапы разработки программы. Разработка или выбор алгоритма решения поставленной задачи. Оформление документации на программу, страница 7

Знак в C

Знак в PASCAL

Операция

Типы операндов

Тип результата

+

-

*

+

-

*

Сложение

Вычитание

умножение

Целые

 хотя бы один вещественный

Целый вещественный

/

/

деление

вещественный

/

div

Деление

Целых

чисел

целый

целый

%

mod

Остаток от деления целых

чисел

целый

целый

Замечание: В языке C операция “ / ”  c целыми числами работает как операция div в PASCAL, т.е. результатом является целая часть от деления первого операнда на второй

2)Логические операции

C                PASCAL    

||                       or               -и 

&&                   and            - или

В языке PASCAL логические операции применяются к величинам логического типа.

Поскольку в языке C отсутствует логический тип, то логическое выражение является истинным, если его значение отлично от 0 и ложным, если = 0.

Таблица истинности операций И, ИЛИ.

X

Y

X и Y

X или Y

Л

Л

Л

Л

Л

И

Л

И

И

Л

Л

И

И

И

И

И

Вычисление логического выражения прекращается как только результат выражения становится определенным. Этот метод вычисления называется методом усечений.

Например С:

Выноска: стрелка вверх: Выр 2Выноска: стрелка вверх: Выр 11) ((b!=0)&&(a/b>x))   Если значение выражения1

равно 0, то значение выра жения 2 на результат не влияет

2) ((a>b)||(a>d))  Если выражение1=0, то второе не вычисляется

3Операции с битами информации (побитовые).

C                PASCAL    

&                   and             - побитовое логическое И.

|                    or                - побитовое логическое  ИЛИ.

^                    xor             - побитовое логическая операция “исключающее ИЛИ”   

Пример:

12 = 00001100                 12&10 = 00001000

10 = 00001010                 12|10 = 00001110

12^10 = 00000110

К этой же группе операций можно отнести операции сдвига 

C                PASCAL 

<<                     shl   Сдвигают последовательность битов первого операнда влево или вправо

>>                     shr           на количество бит равное второму операнду.

При сдвиге влево правые освободившиеся разряды заполняются нулями, при сдвиге вправо (>>) левые освободившиеся биты  заполняются нулями.

Пример:

    11 =00001011              11<<2            00101100 = 44

                                         11>>2            00000010 = 2

Эти операции можно использовать для быстрого деления или умножения на 2встепени n.

<операнд>>>nà<операнд>  / 2n

<операнд>>>nà<операнд> * 2n

4) Операции сравнения

C :             < , > , <= , == , !=      результат сравнения имеет тип int

PASCAL : < , > , <= , = ,   <>     результат сравнения имеет тип boolean

5) В языке C существует операция последовательного вычисления , - предписывает последовательное вычисление выражений.

<выражение 1>,<выражение 2>

Вычисляется значение выражения 1, затем значение выражения 2 и результат всей операции равен значению 2-ого выражения. Используется в тех случаях, когда по синтаксису языка требуется одно выражение, а по логике программы требуется вычислить несколько выражений. Операция   “,” находит широкое применение для построения выражений цикла и позволяет параллельно изменять значения  нескольких управляющих переменных.

9.3.Тернарные операции   

В языке C существует тернарная операция, эта операция называется условной.

Синтаксис записи: <операнд1>?<операнд2>:<операнд3>