Основные конструкции языка Pascal и библиотечные функции

Автор работы: Пользователь скрыл имя, 10 Ноября 2011 в 14:33, реферат

Описание

Краткий теоретический обзор языка программирования с примерами программ.

Содержание

1. Структура программы
2. Описание переменных
3. Простые операторы
4. Структурированные операторы
5. Процедуры и функции
6. Операторы ввода-вывода
7. Строки. Описание типа
8. Модули
9. Программы

Работа состоит из  1 файл

конечный реферат по Паскалю.doc

— 198.00 Кб (Скачать документ)

    Таблица 4 – Встроенные функции для обработки данных

    вещественного типа 
 
 
 
 
 
 
 
 
 

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

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

       <переменная>:выражение;

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

       Тип переменной позволяет не только устанавливать длину ее внутреннего представления,  но и контролировать те действия,  которые осуществляются над ней в программе. В Паскале почти не возможны автоматические преобразования типов. Исключение сделано только в отношении констант и переменных типа integer, которые можно использовать и в выражениях типа real.

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

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

       Безусловный переход приводит к передаче управления из одного места в программе в другое. Структура оператора перехода следующая:

           goto <метка>;

       Здесь goto - ключевое слово.

       Метка - это произвольный идентификатор, позволяющий пометить некоторый оператор, чтобы ссылаться на него. Для совместимости со стандартным Паскалем разрешается в качестве метки использовать целые числа. Метка ставится перед оператором, получающим управление и отделяется от него двоеточием. Как любой идентификатор метку необходимо описать в разделе описания меток, который начинается с ключевого слова label, за которым следует список меток. 
 
 

       4 Структурированные операторы

       Когда необходимо  добиться того,  чтобы  последовательность операторов работала как единый оператор,  можно  помещать  эту последовательность между  ключевыми словами begin и end.  Такая конструкция называется составным  оператором, или  операторными скобками: begin открывает скобку, end – закрывает. Каждый оператор, входящий в состав составного оператора, заканчивается  точкой с запятой.

       Здесь следует  обратить  внимание  на правила употребления точки с  запятой:

  • каждое  описание  переменной и определение константы заканчивается точкой с запятой;
  • каждый  оператор  в  теле программы завершается точкой с запятой, если сразу за ним не следуют  ключевые  слова  end, else или until;
  • после определенных ключевых  слов,  таких, как  then, else, begin, var, const, никогда не ставится точка с запятой.

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

       Условный  оператор служит для ветвлений в  программе и имеет следующий синтаксис:

                if <условие> then <оператор1> else <оператор2>.

       Здесь:

  • if, then, else - ключевые  ;
  • <условие> - логическое выражение типа сравнения (например, a>b,  c<=d, f=1), логическому типу  посвящен  следующий раздел пособия;
  • <оператор1> и <оператор2> - любой оператор Паскаля.

       Оператор  работает следующим образом:  если условие истинно, то выполняется <оператор1> и управление передается на следующий за условным оператор;  если условие ложно, то выполняется <оператор2> и управление  передается на следующий за условным оператор. Таким образом,  всегда выполняется один из двух операторов: либо из ветви then, либо  из ветви else.

       Кроме вышеприведенной формы условного  оператора, существует сокращенная  форма  условного  оператора, в  которой  отсутствует ветвь else:

                 if <условие> then <оператор1>.

       Оператор  работает следующим образом:  если условие истинно, то выполняется  <оператор1> и управление передается на следующий за условным оператор;  если условие ложно,  то  управление сразу передается на следующий за условным оператор. Таким образом, в зависимости от условия <оператор1> либо выполняется, либо не выполняется.

       При определении  последовательности выполнения вложенных условных операторов следует учесть,  что каждое  else соответствует тому if, которое ему непосредственно предшествует, таким образом исключается всякая двусмысленность.

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

       Оператор case предназначен для организации выбора из множества различных вариантов. В общем случае оператор case выглядит следующим образом:

       case <выражение>of<список выбора>else<оператор>end;

       Здесь:

  • case, of, else, end - ключевые слова;
  • <выражение> - выражение любого порядкового типа;
  • <список выбора> одна или более конструкций вида:

    <значение>: <оператор>;

  • <значение> - константа или константное выражение того же типа, что и <выражение>;
  • <оператор> - любой оператор Паскаля, в том числе и составной.

       Работа  оператора начинается с вычисления <выражения>. Значение этого выражения является критерием для выбора из нескольких вариантов. Если полученное значение выражения совпадает с одной из констант, то выполняется тот оператор, которому предшествует эта константа. Если такой константы не обнаруживается, то выполняется оператор следующий за ключевым словом else. Ветвь else может отсутствовать, и в этом случае управление передается оператору, следующему за оператором case. 
 
 
 
 
 
 
 
 
 

       5 Процедуры и функции

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

  • раздел описаний (меток, констант, типов, переменных процедур и функций);
  • раздел операторов, представляющий собой составной оператор begin-end.

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

       Заголовок процедуры имеет вид:

      procedure <имя>;

       Здесь:

  • procedure – служебное слово;
  • <имя> – имя процедуры, определяемое в соответствии с общими правилами образования идентификаторов; список формальных параметров – перечень имен для обозначения исходных данных и результатов работы процедуры с указанием их типов.

       Допускается описание процедуры не содержащей формальных параметров.

       Всякая  подпрограмма-процедура может содержать свои внутренние или вложенные процедуры. Степень вложенности определяется возможностями машины.

       Заканчивается блок процедуры точкой с запятой. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

         6 Операторы ввода-вывода

       Ввод-вывод  связан с обменом  информацией   между  оперативной памятью и  внешними устройствами.  Стандартным  файлом ввода является клавиатура, а вывода – экран. Для ввода данных с клавиатуры применяются процедуры:

  • read (<список ввода>);
  • readln (<список ввода>);

       Список  ввода – это последовательность из одной или более переменных типа char, string,  а также любого целого или вещественного типа. При вводе числовых переменных процедура read вначале выделяет подстроку  во  входном потоке по следующему правилу: все ведущие пробелы,  символы табуляции и маркеры конца строки пропускаются, выделяется первый значащий символ, признаком конца подстроки является любой из вышеперечисленных символов или символ конец файла. Выделенная подстрока рассматривается как символьное представление числовой константы, которое преобразуется в соответствии с типом переменной, и полученное значение  присваивается  переменной. Процедура  readln  идентична процедуре read за исключением того,  что после считывания последней переменной, оставшаяся часть  строки  пропускается,  так что  следующее  обращение к read или readln начнется с первого символа новой строки.

       Для вывода данных на экран используются процедуры:

  • writeln(<список ввода>);
  • write(<список ввода>);

       Список  вывода может содержать одно или  несколько выражений типа char, string, boolean, а также любого целого или вещественного типа. Отличие процедуры writeln от write  состоит лишь  в том, что в процедуре write курсор остается на той же строке экрана за последним выведенным символом,  а в writeln курсор переходит на начало следующей строки.

       Кроме того,  процедура вывода  предоставляет  возможность указать в  выводимом  числе количество позиций и сколько из них после запятой (последнее только для чисел с плавающей точкой):

Информация о работе Основные конструкции языка Pascal и библиотечные функции