А. В. Розина программирование на паскале методическое пособие

Вид материалаМетодическое пособие

Содержание


Тема 2. Переменные. Тип REAL.
Var a, d: integer
Зачем задавать тип переменной?
Подобный материал:
1   2   3   4   5   6   7   8   9   10

Тема 2. Переменные. Тип REAL.



Переменная - это величина, которая может изменять свое значение в процессе выполнения программы.

Каждая переменная принадлежат определенному типу данных: целому, вещественному, литерному (символьному) и т. д.

Тип переменной определяется в разделе описаний: пишется VAR (от англ. слова variable) и перечисляются через запятую имена переменных, затем ставится двоеточие и пишется тип этих переменных, в конце ставится точка с запятой. Так, например, из описания переменных

VAR A, D: INTEGER;

B, C: REAL;

видно, что переменные A, D имеют тип INTEGER (целый), а B, C – тип REAL (вещественный). Переменные A,B,C,D примут значения только в теле программы посредством операторов присваивания или ввода.

Зачем задавать тип переменной?

Когда в блоке описания задается тип переменных, то тем самым
  • отводится определенное количество места в памяти компьютера для этих переменных (например, для INTEGER (целых) переменных необходимо 2 байта, а для REAL (вещественных) 6 байт)
  • определяется множество допустимых значений переменных (например, целая переменная не может принимать значение 6,5)
  • определяется множество допустимых операций над ними (например, над целыми переменными нельзя выполнить операцию деления /)

Паскаль сообщает об ошибке, если переменные, используемые в теле программы, не были описаны, или над переменными одного типа производится операция в теле программы, допустимая для переменных другого типа, или значение переменной вышло за допустимые пределы.

Приведенный тезис необходимо вспоминать при изучении тем, связанных с типом переменных.


Далее приступаем к изучению переменных типа REAL (вещественный).

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

Вещественные десятичные числа с фиксированной точкой записываются по обычным правилам арифметики. Целая часть от дробной отделяется точкой. Если точка отсутствует, дробная часть считается нулевой. Перед числом может находиться знак "+" или "-". Если знак отсутствует, число считается положительным. Например, -835.017 или ­17.3

Вещественные десятичные числа с плавающей точкой записываются в экспоненциальном виде: mE±p, где m – мантисса (целое или дробное число с десятичной точкой), Е означает десять в степени, р – порядок (целое число), ± знак порядка.

Например, рассмотрим число -123.4567 Оно представлено в виде с фиксированной точкой. Его можно записать в виде с плавающей точкой следующим образом

-123.4567Е00 или –12345.67Е-02 или -1.234567Е02

В Паскале, кроме типа REAL, существуют и другие вещественные типы (табл. 1).

Таблица 1


Тип

Диапазон

Мантисса

Требуемая память

(байт)

REAL

2.9*10-39...1.7*1038

11-12

6

SINGLE

1.5*10-45...3.4*1038

7-8

4

DOUBLE

5.0*10-324...1.7*10308

15-16

8

EXTENDED

1.9*10-4951...1.1*104932

19-20

1


Возможно, на первых занятиях из таблицы 1 целесообразно привести лишь данные по типу REAL, пока не будет задач, требующих большей точности представления вещественных чисел, чем 6 байт.


Над данными вещественного типа определены следующие операции:

+ сложение

- вычитание

* умножение

/ деление

Над данными вещественного типа определены следующие стандартные функции:

abs (x) – абсолютное значение числа. Abs (- 6.7) = 6.7

sqr (x) – квадрат числа. sqr (- 3.2) = 10.24

sqrt (x) – корень квадратный из числа. sqrt (10.24) = 3.2

exp (х), sin(x) , cos (x), ln(x), arctan (Х)


Впервые вводится оператор присваивания :=

w := 6.5 / a;

w := w +1.5;

Алгоритм работы оператора присваивания:
  1. Вычисляется значение правой части оператора присваивания,
  2. Результат пересылается в переменную (присваивается переменной), которая стоит в левой части оператора присваивания.


При изучении данной темы необходимо подчеркнуть, что приоритет выполнения операций на Паскале такой же, как в математике. Однако сложные арифметические выражения должны иметь на Паскале линейный вид. Для этого используются круглые скобки. Например, арифметическое выражение

будет записано на Паскале оператором присваивания Z := (3+X) / (SIN(X) - 0.4);


Кроме оператора присваивания, в данной теме рассматриваются операторы ввода/вывода READ и WRITE.

«Хорошей манерой» написания программ считается, когда первым оператором в теле программы будет оператор вывода сообщения. Например,

WRITE ( 'Начинаем работу' ) ;

WRITE ( 'Ведите радиус окружности' ) ;

Здесь в апострофах записываются текстовые сообщения, которые выводятся на экран.

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

WRITE ('Площадь круга радиуса ', R , '=' , S );

Для организации ввода значений переменных используется оператор READ. В скобках указывается список ввода, т.е. имена переменных через запятую. Например, READ (А, В, С);

Если использовать вместо WRITE оператор WRITELN, то после вывода сообщения будет переход на новую строку. Аналогично работает оператор READLN.

Для закрепления решаются задачи.