До сих пор мы обсуждали лишь данные, изменяющиеся в процессе работы программы – переменные. Кроме них в языке Турбо-Паскаль существуют также константы – неизменные данные. Их использование ничем не отличается от использования переменных. Описываются константы с помощью зарезервированного слова const: после него указывается имя константы, знак равенства и ее значение. При этом тип константы не указывается, он определяется компилятором по ее записи.
Например:
const
a=16; { константа целого типа }
b=2.7; { константа вещественного типа }
c=’f’; { константа символьного типа }
st=’Строка’; { константа строкового типа }
Еще раз отметим, что константы не могут изменяться в процессе работы программы. В частности, они никогда не должны стоять в левой части оператора присваивания.
Строгое описание переменных загоняет нас в рамки типов. А как же быть, если какое-то значение нужно использовать в качестве содержимого переменной, тип которой не совпадает с указанным?
На этот случай в Турбо-Паскале существует возможность преобразования данных. Для этого имеются встроенные функции, которые в качестве параметра получают значение одного типа, а возвращают – значение другого типа. В частности, для преобразования типа real в тип integer используются две функции:
round – округляет вещественное число до ближайшего целого;
trunc – отсекает дробную часть вещественного числа (положительное число округляет в меньшую сторону, отрицательное – в большую).
Например:
x:=round(4.7); { x=5 }
x:=trunc(4.7); { x=4 }
Для преобразования данных типа char в целое число предназначена функция ord. Обратное преобразование integer в char осуществляет функция chr (кроме того, для этой цели существует операция #). Например, с помощью следующей программы можно узнать внутренний код произвольного символа.
1 2 3 4 5 6 7 8 9 10 |
var ch : char; BEGIN write(‘Введите любой символ: ’); readln(ch); writeln(‘Код символа ’,ch,‘ равен ’,ord(ch)); readln; END. |
Существуют также и другие функции преобразования типов. В дальнейшем Вы с ними еще встретитесь. А пока можете почитать об этом в каких-нибудь книжках.