Смекни!
smekni.com

Информатика Базовый курс (стр. 174 из 188)

Переменные с указанием их типа можно вводить в программу с помощью специальных команд описания {объявления, декларации). Это позволяет компилятору организовать эффективное хранение и обработку данных и повышает ясность исходных тестов. Каждый тип описывается своим ключевым словом. Значения переменных разных типов допускается преобразовывать друг в друга в соответствии с соглашениями языка программирования. Такой процесс называется приведением типов.

Переменные могут существовать на всем протяжении работы программы — тогда они называются статическими, а могут создаваться и уничтожаться на разных этапах ее функционирования — такие переменные называются динамическими. Все

584 Глава 20, Основы программирования

остальные данные в программе, значение которых не меняется на протяжении ее работы, называются константами или постоянными. Константы, как и переменные, обычно имеют тип. Данные можно указывать явно:

или для удобства обозначать их идентификаторами. Например, число п, равное 3,1416, можно обозначить как pi и везде вместо числа применять идентификатор. Только изменять значение pi нельзя, так как это не переменная, а константа.
Числовые данные

Числа обычно бывают двух видов: целые и дробные. Если число отрицательное, перед ним ставится знак «-»; если положительное, то знак «+» можно ставить, а можно и опускать. Вычисления над целыми числами выполняются точно, вычисления над дробными числами — приближенно. При записи дробных чисел в качестве десятичного разделителя используется точка:

1.28

3.333321

Очень большие или очень маленькие числа записываются специальным образом.

Для них дополнительно указывается мантисса — число со знаком, являющееся степенью числа 10. Мантисса записывается справа от числа через букву е (или Е). Пробелы в такой записи не допускаются.

Например, число 100 (единица, умноженная на 10 во второй степени) запишется так:

1е+2 число 0,003 (тройка, умноженная на 10 в минус третьей степени) так:

Зе-3 число со 120 нулями — так: 1Е+120

Допускается дробная запись числа с мантиссой:

31.4е-1

Тип числа Бейсик Паскаль Си++
целое INTEGER integer int
дробное DOUBLE real float
Арифметические операции

Для записи арифметических действий используются арифметические операторы. В некоторых языках программирования они считаются не операторами, а опера-


20.3. Алгоритмическое (модульное) программирование 5 8 5

циями, предназначенными для вычисления значения выражения, но не влияющими на другие значения и не сказывающимися на ходе выполнения программы.

К основным арифметическим операциям относятся:

+ (сложение)

(вычитание)

* (умножение)

/ (деление)

Такая форма записи отвечает общепринятым соглашениям и принята в большинстве языков программирования.

Каждая арифметическая операция имеет свой приоритет. Операции с более высоким приоритетом (умножение и деление) будут выполняться раньше, чем операции с более низким приоритетом (сложение и вычитание). Изменить порядок вычисления выражения можно с помощью круглых скобок.

Ь*2 + с/3

Ь* (2 + с) - 3

Скобки допускается вкладывать друг в друга произвольное число раз. При этом использование квадратных или фигурных скобок, как правило, не допускается. ((у+2)*3 + 1) / 2

Арифметические выражения

С помощью арифметических операций формируются арифметические выражения, которые состоят из операций и операндов (переменных и констант).

Выражение i l + 2

состоит из одной операции «+» и двух операндов — переменной И и числовой константы 2.

Каждое выражение имеет значение, которое определяется в момент выполнения оператора, содержащего это выражение. Если на момент вычисления выражения И +2 в переменной И хранится число 3, то значение этого выражения будет равно 5 (3+2).
Логические выражения

При создании программ не обойтись без логических выражений. Они отличаются тем, что результат их вычислений может принимать только одно из двух допустимых значений — true (истина, да, включено) и false (ложь, нет, выключено). Чаще всего значение false ассоциируется с нулем, а значение true — с числом 1 или просто ненулевым значением.

При записи логических выражений используются операции сравнения и логические операции. Операции сравнения сличают значения правого и левого операндов. Результатом сравнения является true, если оно удачно, и false в противном случае.

Глава 20, Основы программирования

В таблице даны примеры записи операций сравнения для разных языков.

Операция

Варианты написания

Бейсик, Паскаль Си++
Равно = ==
Не равно о !=
Меньше < <
Меньше или равно <= <=
Больше > >
Больше или равно >= >=

В одном выражении может потребоваться проверка нескольких подобных условий. Например, надо определить, больше ли значение переменной X, чем 0 и меньше ли, чем 10. Условия могут быть связаны с помощью логических операций, наиболее активно используемые из которых — это И и ИЛИ. В компьютерной графике также часто применяется так называемое исключающее ИЛИ и операция отрицания НЕ. Для нее требуется только один операнд, указывающийся справа от знака операции. Эта операция просто меняет значение своего операнда на противоположное.
1 операнд 2 операнд

И

ИЛИ

исключающее ИЛИ

HE (только первый операнд)

true

true

true

true

false

false

true

false

false

true

true

false

false

true

false

true

true

true

false

false

false

false

false

true

В следующей таблице приведен синтаксис записи логических операций.

Приоритеты всех логических операций ниже, чем приоритеты операций сравнения, поэтому сравнения всегда выполняются первыми. А логические операции вычисляются в следующем порядке: сначала НЕ, потом И, потом ИЛИ. При необходимости этот порядок может быть изменен с помощью скобок.

Примеры логических выражений:

xl >= 1 && xl <= 10

20.3. Алгоритмическое (модульное) программирование 5 8 7

Логический тип

Бейсик Паскаль Си++
Базового типа нет. Используется числовой тип INTEGER boolean
bool

Строчные выражения

Строки в языках программирования всегда заключаются в кавычки. В Си++ и Бейсике для этого используются двойные кавычки, в Паскале — одинарные.

"это строка Бейсика или Си++"

'это строка Паскаля'

Строка может быть пустой — не содержать ни одного символа. Например:

Как правило, строки можно сравнивать друг с другом на эквивалентность (равно и не равно). В некоторых языках программирования допускаются также сравнения типа «больше» или «меньше» — при этом происходит последовательное сравнение значений символов (каждый символ представляется в компьютере конкретным числом).