Программирование Паскаль

Автор работы: Пользователь скрыл имя, 18 Марта 2011 в 10:02, контрольная работа

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

Структура программы на Турбо Паскаль

Файлы: 1 файл

Нескучное программирование на языке Паскаль.doc

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

 
 

Оператор – это команда языка программирования инструкция).

Оператор  присваивания – это команда для записи нового значения в переменную.

Математические  операции

В таблице приведены  основные математические операции Турбо  Паскаль.

Символ  операции Название  операции Пример
* умножение 2*3 (результат: 6)
/ деление 30/2 (результат: 1.5E+01)
+ сложение 2+3 (результат: 5)
- вычитание 5-3 (результат: 2)
div целочисленное деление 5 div 2 (результат: 2)
mod остаток от деления 5 mod 2 (результат: 1)

Логические  операции

Над логическими  аргументами в Турбо Паскаль  определены следующие операции:

  • NOT - логическое отрицание ("НЕ")
  • AND - логическое умножение ("И")
  • OR - логическое сложение ("ИЛИ")
  • XOR - логическое "Исключающее ИЛИ"

Результаты выполнения этих операций над переменными А  и В логического типа приведены  в таблице истинности.

A B not A  A and B  A or B  A xor B 
true true false true true false
true false   false true true
false true true false true true
false  false    false false false

Операции  отношения

К операциям  отношения в Турбо Паскаль  относятся такие операции, как:

  • > - больше
  • < - меньше
  • = - равно
  • <> - не равно
  • >= - больше или равно
  • <= - меньше или равно

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

Приоритет операций

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

  • унарная операция not, унарный минус -, взятие адреса @
  • операции типа умножения:  *  /  div  mod  and
  • операции типа сложения:  +  -  or  xor
  • операции отношения:  =  <>  <  >  <=  >=  in

Порядок выполнения операций переопределить можно с помощью скобок. Например, 2*5+10 равно 20, но 2*(5+10) равно 30.

Основные  математические функции

В этом разделе  приведены основные математические функции, встроенные в системную  библиотеку Турбо Паскаль.  

Abs(X)     Возвращает абсолютное значение числа X.

Cos(X)    Возвращает косинус числа X, где X - угол в радианах

Sin(X)    Возвращает синус числа X, где X - угол в радианах

ArcTan(X)    Возвращает арктангенc числа X.

Exp(X)        Возвращает число, равное eX.

Ln(x)            Возвращает число, равное натуральному логарифму от числа X.

Pi                  Число Пи.

Sqr(X)          Возвращает число, равное квадрату числа X.  

Функций тангенс и котангенс в Турбо Паскале нет. Для их вычисления используйте выражение sin(x)/cos(x) (или cos(x)/sin(x) для котангенса).  Функции возведения в произвольную степень в Турбо Паскале нет. Используйте многократное умножение для возведения в целочисленную степень, либо функции Exp и Ln для возведения в вещественную степень: .

Примеры:

Выражение Запись на Паскале
X3 X*X*X
X3,5 Exp(3.5*Ln(X))
U2x Exp(2*x*Ln(U))

Sqrt(X)        Возвращает число, равное квадратному корню из числа X.

Trunc(X)    Возвращает число, равное целой части числа X.

            (Происходит отбрасывание  дробной части числа X.

            Результат выполнения имеет тип Longint).

Frac(X)      Возвращает число, равное дробной части числа X.

Int(X)         Возвращает число, равное целой части числа X.

            Результат выполнения функции - real.

Round(X)      Функция округляет число X. Возвращаемое значение имеет тип Longint.

Random(X)    Возвращает случайное целое число в диапазоне 0..X.

        Random     Если аргумент опущен, то возвращается случайное вещественное число из интервала (0; 1).

Перед использованием random в программах рекомендуется  сначала инициализировать генератор  псевдослучайных чисел процедурой Randomize. В противном случае при каждом запуске программы будет генерироваться одна и та же последовательность случайных чисел.

Пример. Вывод на экран 5 случайных  чисел в диапазоне -10..10.

var i: integer;

begin

   randomize;

   for i:=1 to 5 do writeln(random(21)-10);

end.

  Inc(X,Y)   Увеличивает значение числа X на Y. Если число Y не указано, то увеличение происходит на 1.

Dec(X,Y)  Уменьшает значение числа X на Y. Если число Y не указано, то уменьшение происходит на 1.

Операторы ввода и вывода

Ввод данных

Процедура производит последовательное чтение К значений исходных данных и присваивает эти значения переменным А1, А2, ..., АК. 

Read (A1, A2,...AK);

В этом случае после  ввода данных происходит перевод  курсора на следующую строку: 

ReadLn (A1, A2,...AK);  

Пустой оператор ReadLn позволяет приостановить работу программы до нажатия Enter: 

ReadLn;

Значения исходных данных могут отделяться друг от друга  пробелами и нажатием клавиш табуляции  и Enter.

Не  допускается разделение вводимых чисел запятыми!

Например: Read(a,b); - ввод значений двух переменных

Вывод данных

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

Вывод значений переменных А1, А2,..., АК в строку экрана: 

Write (A1,A2,...AK); 

После вывода данных на экран, курсор перейдет на новую строку: 

WriteLn (A1,A2,...AK);

При выводе вещественных чисел необходимо форматирование:

WriteLn (A:К:М);

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

Например:

Write(a);  { вывод значения переменной а }

Writeln(a); { вывод значения переменной а и переход на новую строку}

Write(‘Hello!’); { вывод текста}

Write(‘c=’,c); { вывод текста и значения переменной с }

Оператор  условного перехода

Задача: Ввести два целых числа и вывести на экран наибольшее из них.

Идея  решения: надо вывести на экран первое число, если оно больше второго, или второе, если оно больше первого.

Особенность: действия исполнителя зависят от некоторых условий

          (если … иначе …).

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

 

Условие - это логическое выражение, в зависимости от которого выбирается одна из двух альтернативных ветвей алгоритма. Если значение условия истинно (TRUE), то будет выполняться оператор 1, записанный после ключевого слова then. В противном случае будет выполнен оператор 2, следующий за словом else, при этом оператор 1 пропускается. После выполнения указанных операторов программа переходит к выполнению команды, стоящей непосредственно после оператора if.

Необходимо  помнить, что перед  ключевым словом else точка с запятой никогда не ставится!

Следует помнить, что синтаксис языка  допускает запись только одного оператора после ключевых слов then и else, поэтому группу инструкций обязательно надо объединять в составной оператор (заключать в операторные скобки begin ... end). В противном случае возникает чаще всего логическая ошибка программы, когда компилятор языка ошибок не выдает, но программа тем не менее работает неправильно.

 

 
 

 
 
 
 

Оператор  выбора

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

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