Численные переменные и типы данных
Система программирования Turbo Pascal 7.0 является
современным и очень мощным средством для создания
программ. В этом Вы могли неоднократно убедиться,
изучая элементарные возможности редактора этой
системы. Согласитесь, - работа в таком редакторе не
сложна, и зачастую просто доставляет пользователю
удовольствие разнообразием своих возможностей.
Программы, созданные в системе TP достаточно
эффективны, и позволяют использовать всю мощь
вычислительной техники. Одним из самых главных
препятствий при создании программ, является объём
оперативной памяти компьютера. Программисту всегда
приходится думать о том, каким образом уменьшить
потребность программы в памяти. Эту проблему можно
решить ограничивая количество переменных
используемых в программе, или уменьшая размер ячеек
памяти для их хранения. Вы уже знаете, как
объявляются переменные целого и вещественного типа.
Кроме этих переменных в системе TP существует
несколько численных типов. Они отличаются друг от
друга только размером памяти, необходимым для их
хранения, и соответственно, диапазоном чисел,
которые можно хранить в этих переменных. Таким
образом, программист может выбрать необходимый
численный тип, и рационально использовать память.
Целые типы.
Тип Диапазон Размер в байтах
Shortint -128 .. 127 1
Integer -32768 .. 32767 2
Longint - 2147483648 .. 2147483647 4
Byte 0 .. 255 1
Word 0 .. 65535 2
Тип-диапазон.
Все
целые типы относятся к так называемым перечислимым
или порядковым типам. В любом порядковом типе можно
выделить подмножество значений, в которое входят все
значения исходного типа. Тип-диапазон задаётся в
разделе объявления типов указанием минимального и
максимального значений, разделённых двумя точками.
Раздел объявления типов всегда начинается служебным
словом Type. Например:
Type
vcp = 1..32.
Вещественные типы.
Тип Диапазон Колличество Размер
цифр в байтах
Real 2.9E-39 .. 1.7E+38 11-12 6
Single 1.5E-45 .. 3.4E+38 7-8 4
Double 5.0E-324 .. 1.7E+308 15-16 8
Extended 3.4E-4932 .. 1.1E+4932 19-20 10
Comp E-263+1 .. E263-1 19-20 8
При
работе с численными переменными допускаются
следующие арифметические операции и функции.
Арифметические операции.
+ сложение
- вычитание
* умножение
/ деление
div
деление целых чисел. Например:
a
div b если a=10 и b=3 то результат=3.
mod
остаток от деления целых чисел. Например:
a
mod b если a=10 и b=3 то результат=1.
Арифметические функции.
Abs(x) абсолютная величина (модуль)
Arctan(x) арктангенс
Cos(x) косинус
Exp(x) e в степени x (експонента)
Frac(x) дробная часть числа
Int(x) целая часть
Ln(x) натуральный логарифм
Pi число пи Pi=3.1415926535897932385
Sin(x) синус
Sqr(x) квадрат
Sqrt(x) квадратный корень
Примечание: все тригонометрические функции
используют радианную меру угла.
Иногда используются функции преобразования типов
данных.
Функции преобразования типов данных.
Round(x) - округление вещественного числа до
ближайшего целого. Аргу мент функции - величина
вещественного типа, а результат - округлён ная до
ближайшего целого числа величина типа Longint. Если
результат выходит за диапазон значений Longint, то
при выполнении прог раммы возникает ошибка.
Trunc(x) - получение целой части вещественного
числа. Тип результата - Longint. Если результат
выходит за диапазон значений Longint, то при
выполнении программы возникает ошибка.
Целые типы относятся к величинам порядкового типа.
Допускается использование при работе с ними функций
для величин порядкового типа.
Функции для величин порядкового типа.
High(x) - получение максимального значения величины данного типа.
Low(x) - получение минимального значения величины данного типа.
Pred(x) - определение предыдущего значения величины x.
Succ(x) - определение последующего значения величины x.
Представление целых чисел
В
изображении целых чисел присутствуют лишь знак и
цифры (знак + можно не указывать). Предполагается
десятичная система счисления, однако можно
использовать и шестнадцатиричную. В этом случае
перед числом следует поставить знак $.
Представление вещественных чисел
Вещественные числа содержат в своём изображении
точку и/или показатель степени (символ E или e),
например:
X = -0.5;
Y = 1.34;
Z = -1E-5;
W = 7.5e+15; (выражение с плавающей запятой)
Форматированый вывод
Как
вы уже знаете, вывод информации на экран монитора
осуществляется с помощью операторов Write и Writeln.
Параметрами данных процедур могут быть текстовые
сообщения (строки заключённые в кавычки), и/или
имена переменных, содержимое которых выводится на
экран монитора. При этом имена переменных могут быть
записаны в следующем виде:
E
E:m
E:m:n
где E - переменная, значение
которoй выводится на экран.
m,n - выражения тип integer, необязательные
параметры, указывающие соответственно ширину
выводимого поля и количество дробных цифр.
Конструкция вида E:m:n может использоваться только
для вещественных чисел. Для остальных типов
употребляется конструкция вида E:m.
Если выводимое данное имеет меньше знаков, чем m то
оно дополняется слева пробелами. Если больше, то
выводится столько знаков, сколько необходимо для
корректного представления результата.
Если параметры m и n опущены, то подразумевается их
некоторые, зависящие от реализации, значения.
Если для данных вещественного типа отсутствует
параметр n, то выводимое данное представляется с
плавающей запятой и показателем степени. В противном
случае при выводе используется представление числа с
фиксированной точкой, причём после точки запишется n
цифр (общая длина поля - m символов).
Writeln(i:4) i=5 ___5
Writeln(i:4,j:4) i=-5, j=297 __-5_297
Writeln(i:6) i=345.6 _345.6
Writeln(i) i=345.6 3.45600000E+02
Контрольные вопросы
- Перечислите известные
вам целые типы, в порядке увеличения диапазона.
- Перечислите известные
вам вещественные типы, в порядке увеличения
диапазона.
- Объясните необходимость
использования нескольких целых и нескольких
вещественных типов.
- Как записываются и
выполняются известные вам арифметические
операции?
- Перечислите известные
вам стандартные арифметические функции.
- Перечислите функции для
величин порядкового типа.
- Перечислите функции
преобразования типов данных.
- Расскажите о
представлении целых чисел.
- Расскажите о
представлении вещественных чисел.
- Для чего и как
используют форматированный вывод?
- Что такое тип-диапазон?
Задания для самостоятельного выполнения.
- Напишите программу,
которая вычисляет остаток от деления двух целых
чисел, введённых с клавиатуры, и выводит
результат на экран.
- Напишите программу,
которая вычисляет квадратный корень суммы трёх
вещественных чисел, введённых с клавиатуры.
Результат, округлённый до ближайшего целого,
числа выводится на монитор.
- Напишите программу,
которая вычисляет квадрат синуса вещественного
числа, введённого с клавиатуры. На экран
выводится дробная часть результата предыдущих
вычислений.
- Напишите программу,
которая вычисляет значение функции sin(|a+b|)-|cos(a-b)|
для a и b введённых с клавиатуры. Результат,
округлённый до ближайшего целого числа,
выводится на монитор.
- Напишите программу
которая вычисляет радиус окружности по введённой
с клавиатуры площади окружности. Результат
выводится на монитор.
- Напишите программу
которая вычисляет площадь треугольника. С
клавиатуры вводятся длины двух сторон
треугольника и угол (в градусах) между ними.
Результат выводится на монитор.
- Напишите программу
которая преобразует угол из градусной меры в
радианную. Результат выводится на экран.
- Напишите программу,
которая вычисляет значение функции cos(cos(cos(a+b))+c)
для a, b и c введённых с клавиатуры. Результат
округлённый до ближайшего целого числа выводится
на монитор.
- Определите максимальную
высоту подъёма и дальность полёта снаряда,
выпущенного со скоростью V0 под углом alfa к
горизонту.
- Определите высоту, на
которой кинетическая энергия тела равна
потенциальной, если оно брошено вертикально
вверх со скоростью V0.
- Поменяйте между собой
значения двух переменных, не используя третьей
переменной.
- Переменная X содержит
трёхзначное число. Поместите в переменную S
сумму цифр этого числа.
НАЗАД
ДАЛЕЕ