К стандартным скалярным относятся

· целочисленные,

· вещественные,

· литерные,

· булевские типы данных

· указатели.

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

Таблица 1.2. Целочисленные типы

Тип Диапазон Требуемая память (байт)
byte 0 ..255
shortint -128..127
integer -32768.. 32767
word 0..65535
longint 2147483648..2147483647

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

Таблица 1.3. Вещественные типы

Тип Диапазон Мантисса Требуемая память
Real 2.9*10E-39. . 12*10E35 11-12
Single double 1.5*10E-45..3.4*10Е38 5.0*10Е-324..1.7*10Е308 7-8 15-16 4 - 8
Extended 1.9*10Е-4951 . .1. 2*10Е4932 19-20
Comp -2Е+63..2Е+63 10-20

Литерный (символьный) тип определяется множеством значений кодовой таблицы ПЭВМ. Для переменной литерного типа требуется один байт.

Таблица 1.4. Литерный тип

Тип Диапазон Требуемая память
Char Кодовая таблица ПЭВМ

Булевский тип представлен двумя значениями: True (истина) и False (ложь), он широко применяется в логических выражениях и выражениях отношения.

Таблица 1.5. Булевский тип

Тип Диапазон Требуемая память
Boolean True, False

Типы данных, определенные пользователем:

· перечисляемый

· интервальный.

СТРУКТУРА ПРОГРАММЫ

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

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

После заголовка следует программный блок, состоящий в общем случае из 7 разделов: списка имен подключаемых библиотечных модулей (он определяется зарезервированным словом Uses), описания меток, описания констант, определения типов данных, описания переменных, описания процедур и функций, операторов.

Структура программы выглядит следующим образом:

Program <имя> (Input,Output);

Uses <имя1, имя2,...>;

Label ...;

Const ... ;

Тyре ... ;

Var ... ;

Procedure «имя»;

<тело процедуры>;

Function «имя»;

<Тело функции>;

Begin

<опepaтopы>

End.

Любой раздел, кроме раздела операторов, может отсутствовать. Разделы описаний (кроме uses, который всегда расположен после заголовка программы) могут встречаться в программе любое количество раз и. следовать в произвольном порядке. Главное, чтобы все описания объектов программы были сделаны до того, как они будут использованы.

ВВОД-ВЫВОД

Решение самой простои задачи на ЭВМ не обходится без операции ввода-вывода информации. Ввод данных - это передача информации от внешнего носителя в оперативную память для обработки. Вывод -обратный процесс, когда данные передаются после обработки из оперативной памяти на внешний носитель. Внешним носителем может служить терминал ввода-вывода, принтер, жесткий (винчестер) магнитный диск и другие устройства.

Для выполнения операций ввода-вывода служат четыре процедуры:

read, readln, write и writeln.

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

Формат: read (XI, Х2,...,Хп); или read (FV, XI, Х2,...,Хп);, где Х1,Х2,...,Хп - переменные допустимых типов данных, FV - переменная, связанная с файлом, откуда будет выполняться чтение. В данной главе мы рассмотрим в основном первый вариант формата.

Значения Х1,Х2,...,Хп набираются минимум через один пробел на клавиатуре и высвечиваются на экране. После набора данных для одной процедуры read нажимается клавиша ввода <Enter>. Значения переменных должны вводиться в строгом соответствии с синтаксисом языка Паскаль. Если соответствие нарушено (например, X1 имеет тип integer, а при вводе набирается значение типа char), то возникают ошибки ввода-вывода.

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

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

Формат: write (Yl,Y2,...Yn); или write (FV.Y1,Y2,...,Yn);

где Yl,Y2,...,Yn - выражения типа integer, byte, real, char, boolean и т.д.

fv - имя файла, куда производится вывод. Для вывода на принтер fv равно Lst.

Простые операторы:

: = — присваивания;

GoTo — безусловного перехода;

VPI — оператор вызова процедуры;

— пустой оператор.

Ctrl + F9 — Запуск программы.

Alt + F5 — Просмотр результатов выполнения программы.

Alt + X — Выход из Turbo Pascal.

Функции языка ПАСКАЛЬ

Abs(X) - вычисление абсолютной величины X. Тип результата совпадает с типом параметра.

ArcTan(X) - вычисление угла, тангенс которого равен X; значение угла представлено в радианах и может находиться в диапазоне от -Pi/2 до Pi/2. Для преобразования значения угла из радианной меры в градусную необходимо значение угла умножить на число 180/Pi. Результат имеет вещественный тип.

Cos(X) - вычисление косинуса X; параметр задает значение угла в радианах, для преобразования значений угла из градусной меры в радианную значение выражения IBR умножается на Pi/ISO. Результат имеет вещественный тип.

Ехр(Х) - вычисление экспоненты X, т. е. значение е в степени X. е является основанием натурального логарифма и равно 2.718282. Результат имеет вещественный тип.

Frac(X) - вычисление дробной части X. Результат имеет вещественный тип.

Int(X) - вычисление целой части X. Если IBR >= 0, функция возвращает ближайшее целое, большее или равное IBR. Если IBR < О, возвращает ближайшее целое, меньшее или равное IBR. Результат имеет тип real.

Ln(X) - вычисление натурального логарифма х, т. е. логарифма по основанию е (е = 2.718282). результат имеет вещественный тип.

Pi - возвращает значение числа Пи (3.141592653897932385).

Sin(X) - вычисление синуса X. Параметр задает значение угла в радианах. Для перевода значения угла из градусной меры в радианную Х умножается на Pi/180. Результат имеет вещественный тип.

Sqr(X) - возведение в квадрат значения X. Тип результата совпадает с типом параметра.

Sqrt(X) - вычисление квадратного корня из X. Тип результата вещественный.

Random - генерирует значение случайного числа из диапазона 0..0.99. Тип результата вещественный.

Random(I) - генерирует значение случайного числа из диапазона 3..I. Тип результата целочисленный.

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

Скалярные процедуры и функции обрабатывают данные любого скалярного типа, кроме вещественного.

Процедуры

Dec(X(,n)) - уменьшает значение целочисленной переменной Х на n. При отсутствии необязательного параметра n значение Х уменьшается на 1.

Inc(X(,n)) - увеличивает значение целочисленной переменной Х на n. При отсутствии необязательного параметра n значение Х увеличивается на единицу.

Функции

Succ(S) - возвращает значение, следующее за S в списке значений типа. Тип результата совпадает с типом параметра. Если следующее за S значение отсутствует, возникает программное прерывание.

Odd(I) - возвращает значение булевского типа, равное True, если I нечетное, и False, если I четное.

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

2. Контрольные вопросы.

2.1. Из чего состоит алфавит языка Паскаль?

2.2. Что включает в себя словарь языка Паскаль?

2.3. Тип данных.

2.4. Как подразделяются типы данных?

2.5. Структура программы.

2.6. Процедура ввода.

2.7. Процедура вывода.

2.8. Функции языка Паскаль.

2.9. Как запустить программу на выполнение?

2.10. Как просмотреть результат?

2.11. Как выйти из программы?

Задания и технология выполнения.

3.1. Запустить программу Паскаль

Для этого выполните следующие действия:

· Активизировать Пуск

· Программы

· Активизировать Паскаль

3.3. Разработать программу вычисления выражения к стандартным скалярным относятся - student2.ru

с точностью до 2-х знаков.

· Программа

PROGRAM P1;

USES CRT;

VAR X,Y:REAL;

BEGIN

CLRSCR; {очистка экрана}

WRITE ( ‘ введите x’); { вывод поясняющего текста }

READ (X); {ввод значения X}

Y:= SQRT (ABS(-X)); { вычисление Y}

WRITELN (‘Y=’,Y:1:2) {вывод Y с точностью 2 знака }

END. { конец программы}

3.4. Получить результат выполнения программы

при x=25

x=36

x=49

Для этого выполните следующие действия:

· CTRL +F9 ввести 25 и ENTER

· Просмотреть результат ALT +F5 и ESC

· CTRL+F9 ввести 36 и ENTER

· ALT+F5 и ESC

· CTRL +F9 ввести 49 и ENTER

· ALT+F5 и ESC

4. Контрольные задания

4.1. Разработать программу вычисления следующего выражения:

4.1.1.y=tg(x); при x=0,5; x=0,7; x=0,9; с точностью 3 знака

4.1.2.y=ex ; при x=2; x=3; x=0,3; с точностью 2 знака

4.1.3. к стандартным скалярным относятся - student2.ru ; при x=4; x=10; x=20; с точностью 2 знака

4.1.4.y=5-sin(x); при x=0,7; x=0,8; x=0,5; с точностью 3 знака

4.1.5. к стандартным скалярным относятся - student2.ru ; при x=0,5; x=0,4; x=0,9; с точностью 2 знака

4.1.6.y=2*X ; при x=1; x=0,5; x=4; с точностью 3 знака

4.1.7.y=x4 ; при x=0,5; x=7; x=10; с точностью 2 знака

4.1.8.y=x2-4 ; при x=3; x=3,5; x=4; с точностью 2 знака

5. Рекомендуемая литература

5.1. Докунина Т.К. Программирование и алгоритмические языки.

- М.: Машиностроение, 1988.- с.265-268, 291-293.

Практическое занятие № 3

Тема: Основы алгоритмизации и программирования.

Наши рекомендации