Материал: Паскаль. типы данных, операторы. методические указания для самостоятельной работы по дисциплине «Информатика». Кононов А.Д., Кононов А.А

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

ФГБОУ ВО «Воронежский государственный технический университет»

Кафедра информатики и графики

48-2018

ПАСКАЛЬ: ТИПЫ ДАННЫХ, ОПЕРАТОРЫ

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

для самостоятельной работы по дисциплине «Информатика» для студентов 2-го курса всех направлений подготовки

Воронеж 2018

УДК 004.9.(07) ББК 32,81я7

Составители:

канд. физ.-мат. наук А.Д. Кононов, канд. техн. наук А.А. Кононов

Паскаль: типы данных, операторы: методические указания для самостоятельной работы по дисциплине «Информатика» для студентов 2-го курса всех направлений подготовки / сост.: А.Д. Кононов, А.А. Кононов. – Воронеж: ВГТУ, 2018. – 44 с.

Методические указания являются продолжением учебного пособия «Основы программирования на языке Паскаль. Основные понятия алгоритмического языка Паскаль» и ставят целью углубление и практическое закрепление навыков составления программ на этом популярном языке. Методические указания снабжены большим количеством примеров и контрольных заданий для аудиторной и самостоятельной работы.

Методические указания предназначены для студентов 2-го курса всех направлений подготовки.

Ил. 15. Табл. 2. Библиогр.: 7 назв.

УДК 004.9.(07) ББК 32,81я7

Рецензент канд. техн. наук, доц. Д.В.Сысоев

Печатается по решению учебно-методического совета ВГТУ

© ФГБОУ ВО «Воронежский государственный технический университет», 2018

ВВЕДЕНИЕ

На начальном этапе обучения студенты познакомились с важнейшими базовыми разделами дисциплины «Информатика» - алгоритмизацией и основными понятиями программирования на примере конкретного алгоритмического языка Паскаль. В данной работе, кроме краткого экскурса в основы программирования, внимание акцентируется на освоении и использовании структурированных типов данных, операторов, рассмотрении некоторых типовых приемов программирования, в том числе и вычислении сумм бесконечных рядов с помощью итерационных циклов.

Издание содержит авторские иллюстрации.

1. СТАНДАРТНЫЕ ТИПЫ ДАННЫХ

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

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

1)раздел меток;

2)раздел констант;

3)раздел типов;

4)раздел переменных;

5)раздел процедур и функций;

6)раздел операторов.

Раздел операторов заключается в операторные скобки BEGIN … END. Остальные перечисленные разделы носят декларативный (описательный) характер. Любой раздел, кроме последнего, может отсутствовать. Разделителями между разделами и операторами служит точка с запятой (;). В конце раздела операторов должна стоять точка (.). Для компилятора это признак физического завершения программы.

В любое место программы, где по смыслу мог бы присутствовать пробел, могут быть включены комментарии, не влияющие на фактическое исполнение программы. Комментарии заключаются в фигурные скобки { . . .} или пары символов (* . . . *).

1.2. Описание стандартных типов данных

Программа оперирует некоторыми объектами, называемыми данными. Каждый элемент данных в программе является либо кон-

стантой, либо переменной.

Значения констант не могут изменяться во время выполнения программы. Описываются в разделе описания констант после служебного слова CONST. Типы констант не указываются, а определяются в соответствии с используемыми значениями.

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

Целый тип обеспечивает использование целых чисел. В конкретной вычислительной машине существуют ограничения на диапазон целых чисел от - MAXINT до MAXINT. Над переменными целого типа определены следующие арифметические операции: + (сложение), - (вычитание), * (умножение), / (деление), DIV (деление целых чисел), MOD (вычисление остатка от целочисленного деления). Результат всех этих операций целого типа (кроме /, где результат вещественный). Определены также операции отношения = , <> , < , > , <= , >= . Их результат – логический (булевского типа). С аргументами целого типа могут использоваться следующие стандартные функции: SIN(X), COS(X), LN(X), ARCTAN(X), EXP(X), SQRT(X), дающие ре-

зультат вещественного типа, а также SQR(X) и ABS(X), которые в данном случае возвращают результат целого типа (совпадает с типом аргумента).

Определены также функции:

ORD(X) – результат TRUE (истина) для нечетного аргумента и FALSE (ложь) для четного аргумента;

SUCC(X) – вырабатывает следующее целое число, то есть число, на единицу большее, чем Х;

PRED(X) – вырабатывает предыдущее целое число, то есть число, на единицу меньшее, чем Х.

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

Над переменными вещественного типа определены следующие арифметические операции: + , - , * , / , а также операции отношения.

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

2

Определены также стандартные функции преобразования значения вещественного типа в значение целого типа:

TRUNC(X) – вырабатывает целый результат путем отбрасывания дробной части аргумента;

ROUND(X) – вырабатывает целый результат путем округления до ближайшего целого, например,

для x=21.53

trunc(x) = 21;

round(x) = 22;

для x= -2.7

trunc(x) = -2;

round(x) = -3.

Символьный тип. Значениями символьного типа является набор элементов – знаков. Символ, заключенный в апострофы, обозначает константу символьного типа, например, ‘x’, ‘5’, ‘ = ‘.

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

ORD(S) – дает порядковый номер символа S в упорядоченном множестве символов (Американский стандартный код для обмена

информацией ASCII), например,

ord(‘:’) = 58;

ord( ‘5’) = 53.

CHR(I) – дает символ, стоящий под номером I в упорядоченном

множестве символов, например,

chr(66) = ‘B’;

chr(57) = ‘9’. Очевид-

но, что chr(ord(s)) = s ord(chr(i)) = i.

Над переменными символьного типа определены операции отношения. Пусть с1, с2 - переменные символьного типа. Отношение с1<c2 истинно тогда и только тогда, когда ord(c1)< ord(c2).

К аргументам символьного типа применимы также стандартные функции PRED(S) и SUCC(S). Функции PRED(S) дает предыдущий символ, а функция SUCC(S) – следующий, например, PRED(‘B’) =’A’; SUCC(‘9’) = ‘ : ’. Справедливы также равенства:

PRED(S) = CHR( ORD(S) – 1) и SUCC(S) = CHR(ORD(S) + 1).

Логический тип. Переменные логического (булевского) типа могут принимать одно из двух возможных значений – TRUE (истина) или FALSE (ложь). В достаточном для практики рассмотрении над ними определены три логические операции: NOT (отрицание), AND (конъюнкция), OR (дизъюнкция). Булевский тип определен так, что FALSE < TRUE, то есть операции отношения применимы и к переменным логического типа.

Значения TRUE и FALSE можно теперь рассматривать как упорядоченное множество, состоящее из двух элементов. При этом определены следующие значения соответствующих стандартных функций:

ORD(FALSE) = 0;

ORD(TRUE) = 1;

SUCC(FALSE) = TRUE;

PRED(TRUE) =FALSE.

3