Основы языка Паскаль

Автор работы: Пользователь скрыл имя, 16 Ноября 2010 в 19:34, Не определен

Описание работы

основы языка программирования

Файлы: 1 файл

Основы языка Паскаль.doc

— 187.00 Кб (Скачать файл)

    Если  для вывода числа 7 будет выделено 3 позиции, то на экран монитора будет выведено 7, а не 007.

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

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

    Линейный  вычислительный процесс 

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

    Пример: Вычислить среднее арифметическое и среднее геометрическое для двух действительных положительных чисел. 
 
 
 
 
 

    

      PROGRAM SREDNIE; 

      Var

      a, b : real; 

      SR : real; 

 SG : real; 

      BEGIN 

      writeln (‘введите значения переменных’); 

      readln (a, b); 

      SR : = (a + b)/2; 

      SG : = sqrt(a*b);

                  writeln (‘среднее арифметическое равно’, SR:8:2);

                  writeln (‘среднее геометрическое равно’, SG:8:2);

      END. 

Операторные скобки 

     В Паскале под «операторными скобками» понимают два служебных слова: Begin (открывающаяся скобка) и End (закрывающаяся скобка). 

    Составной оператор 

    Составной оператор – это последовательность произвольных операторов программы заключенная в операторные скобки.

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

    BEGIN {начало раздела операторов}

          Begin

                Begin

                End

          End

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

    Во  избежание ошибок каждую пару “Begin – End” обычно пишут с одной позиции. 
 

    Разветвляющиеся вычислительные процессы 

    Разветвляющийся процесс – это такой процесс, где после проверки некоторого логического условия, вычисление идет либо по ветви «да» либо по ветви «нет».

    Пример: Вычислить  

         f =  3sin2x + a, x>0

      3a2 + bx,    x<0    

      a = -2,25

      b = 4,8. 

  
 

PROGRAM  RAZVETV;

Var

      a, b, x : real;

      f : real;

BEGIN

      a : = -2.25;

    b : = 4.8;

    write (‘введите значение переменной x’);

    readln (x);

    IF x>0  THEN  F : = 3*SQR (sin(x)) + A

    ELSE

             F : = 3*A*A + B*X;

    witeln (‘F =’,F:7:2);

    END. 
 

    Условный  оператор 

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

  1. Полная форма оператора.

             IF <условие> THEN <оператор “да”>

             ELSE <оператор “нет”>;

    Каждое  слово ELSE пишется под своим словом IF. Для большей наглядности текста программы операторы, следующие за словами THEN и ELSE можно писать на следующей строке.

    Перед словом ELSE нельзя ставить точку с запятой. 

  1. Краткая форма оператора.

    Допускает опускать служебное слово ELSE . Оператор в этом случае выглядит следующим образом:

    IF <условие> THEN

                                  <оператор 1>;

    <оператор 2>;

    <оператор 3>; 

    В данном варианте, если условие истинно, то программа уходит на оператор 1, а затем продолжает выполнять последовательности операторов 2,3 и т.д.

    Если  условие ложно, сразу выполняется  оператор 2, затем 3 и т.д. 

    Например: Вычислить значение функции

      x2, если x>0

    f(x) =  0, если x=0

          -x2, если x<0 

    Фрагмент  решения этой задачи можно записать как:

    IF    x>0    THEN

                         y = x*x;

    IF    x = 0   THEN

                         y = 0;

    IF    x<0    THEN

                         y = -(x*x);

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

    Для того, чтобы записать группу действий необходимо использовать составной оператор begin – end (операторные скобки). 

  1. IF <условие>  THEN

          BEGIN

                      оператор 1;

                       оператор 2;

                        …………..

                       оператор n;

          END

    ELSE

                        оператор; 

  1. IF <условие> THEN оператор

    ELSE

               BEGIN

                        оператор 1;

                        оператор 2;

                        …………..

                        оператор n;

           END; 

  1. IF <условие>  THEN

                           BEGIN

                                   оператор 1;

                                   оператор 2;

                                   …………...

                                   оператор n;

                           END

            ELSE

                           BEGIN

                                   оператор 1;

                                   оператор 2;

                                   ………….

                                   оператор n;

                           END; 

    Между словами BEGIN и END стоят операторы отделенные между собой точкой с запятой.

    Перед словом ELSE точки с запятой быть не должно, так как это один оператор

                            IF…THEN…ELSE.

    Вложенные операторы IF 

    Рассмотрим  пример:

    Определить, попадает ли число x в интервал от 7 до 21.

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

    IF  x>7  THEN

        IF  x<21  THEN

                      writeln (‘x попадает в интервал’)

        ELSE  writeln (‘x>=21’)

    ELSE   writeln (‘x<=7’); 

    Вложенность операторов IF не ограничена. 

    Ветвление по многим направлениям 

    Для замены конструкций из вложенных  операторов IF…THEN в Паскаль-программах часто используются операторы

                                              CASE…OF.

    Данная  конструкция является идеальной  для обработки ситуаций с несколькими исходами, когда условие может принимать более двух значений. Примером может служить система учета успеваемости студентов в ВУЗе. Здесь имеется по крайней мере шесть альтернатив (1, 2, …, 5, нет отметки).

    Фрагмент  программы с использованием данной конструкции может выглядеть следующим образом:

    CASE <порядковая переменная> OF

            1: BEGIN

                             оператор 1;

                             ………….

                             оператор n;

                  END;

             2: BEGIN

                             оператор 1;

                             ………….

                             оператор n;

                  END;

            …………………  

            n: BEGIN

                             оператор 1;

                             ………….

                             оператор n;

                  END;

            ELSE

               BEGIN

                             оператор 1;

                             ………….

                             оператор n;

                  END; 

    В тексте одного фрагмента программы  перед ELSE стоит точка с запятой, т.к. конструкция CASE…OF подразумевает, что за ней стоит символ (;).

    Значение <порядковой переменной>, которая при выполнении программы определяет ветвь в операторе CASE…OF, подлежащую выполнению, должна иметь некоторый тип. Она может принадлежать любому из целочисленных типов, каждый из которых позволяет организовать перечисления некоторых объектов. Действительные типы переменных не относятся к классу порядковых.

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