Стандартные математические функции и процедуры Турбо-Паскаля




Наименование Функции Тип аргумента Тип значения Результат вычесления
  МАТЕМАТИЧЕСКИЕ ФУНКЦИИ
abs(x) Целый вещественный Целый вещественный Абсолютное значение "x"
sin(x) Вещественный Вещественный Синус"x"рад
cos(x) Вещественный Вещественный косинус"x"рад
arctan(x) Вещественный Вещественный арктангенс "х" (-Pi/2 < y <td)< 2 Pi>
Sqrt(x) вещественный вещественный квадратный корень из "х"(Ц х, где x > 0)
Sqr(x) Целый вещественный Целый вещественный значение "х" в квадрате (х2)
Exp(x) вещественный вещественный значение "е" в степени "х" (ех, где e= 2. 718282...)
Ln(x) вещественный вещественный натуральный логарифм "х" (х> 0)
Frac(x) вещественный вещественный дробная часть "х"
Int(x) Вещественный Вещественный целая часть "х"
Random - вещественный случайное число (0< =y< 1)
Random(x) Word Word случайное число (0< =y< x)
Succ(c) Порядковый Порядковый следующий за "с" символ
Pred(c) Порядковый Порядковый предшествующий "с" символ

 

Наименование процедуры Тип аргумента Тип значения Результат вычесления
  МАТЕМАТИЧЕСКИЕ ПРОЦЕДУРЫ
Inc(x) целый целый Увеличивает "х" на 1 (x:=x+1;)
Dec(x) целый целый Уменьшает "х" на 1 (x:=x-1;)
Inc(x, n) целый целый Увеличивает "х" на n (x:=x+n;)
Dec(x, n) целый целый Уменьшает "х" на n (x:=x-n;)
  ПРОЦЕДУРЫПРЕОБРАЗОВАНИЯ ТИПОВ ПЕРЕМЕННЫХ
Str(x, s) x-целый или вещественный s-строковый Последовательность символов "s" из цифр числа "x"
Val(s, v, cod) s-строковый v-целый или вещественный cod- целый Двоичная форма числа "v"последовательности "s" cod=0 (код ошибки)
  ФУНКЦИИ ПРЕОБРАЗОВАНИЯ ТИПОВ ПЕРЕМЕННЫХ
Trunc(x) вещественный LongInt целая часть "х"
Round(x) вещественный LongInt округление "х" до целого
Odd(x) целый логический возвращает True если "х" - нечетное число
Сhr(x) Byte Char Символ ASCII кода "х"
Ord(c) Char Порядковый ByteLongInt ASCII код символа "с" Порядковый номер символа "с"

 

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

При вызове функция возвращает значение, которое необходимо присвоить переменной. Например, запись Y:= Sin(x); позволяет вычислить значение синуса угла "х", которое присваивается переменной "Y". Функции имеют высший приоритет, т. е. в выражении сначала вычисляется значение функции, а затем выполняются другие операции. Например: в выражении Y:= 5 * Cos(Pi + x); сначала вычисляется значение аргумента, затем значение функции, которое умножается на пять.

При вызове процедура производит определенные действия и может возвращать значения параметров. Процедура может не иметь параметров, например, для инициализации распределения случайных чисел вызывается процедура Randomize;. Процедуры могут включать параметры, которые необходимо задать при вызове процедуры и параметры, которые возвращают значения после выполнения процедуры. Например, при вызове процедуры Str(x, s); параметр "x" должен быть задан, а параметр "S" возвращает строковый вид числа "x". В некоторых процедурах параметры изменяют свое значение, Например, процедура Inc(x); увеличивает значение "x" на единицу, т. е. возвращает новое значение "x", что соответствует оператору x:=x+1; Таким образом, при вызове процедуры необходимо знать назначение и тип задаваемых параметров.


 

Контрольноезадание №2

Программирование разветвляющихся алгоритмов

   

 

Цель: научиться правильно использовать условный оператор if; научиться составлять программы решения задач на разветвляющиеся алгоритмы.

Общие сведения

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

Перед выполнением работы необходимо ознакомится с правилами записи логических выражений, операций сравнения, операторов IF, CASE, READ.

Пример

Пример1: Дано действительное а. Для функций f(a),график которой представлен на рисунке,вычислить f(a).

Этапы решения задачи:

1. Математическая модель: функция вычисляется по следующей формуле

2. Составим схему алгоритма


Детализируем блок"Определяем, к какому промежутку относится x"


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

Таким образом, окончательный алгоритм выглядит следующим образом:


Дальнейшая детализация не требуется. Переводим блок-схему на язык Паскаль.

Program example1;

var a, f:real;

begin

write('Введите a> '); readln(a);

if a<-1 then f:= -a-1 else

if (a>=-1) and (a<0) then f:= a+1 else

if (a>=0) and (a<1) then f:= -a+1 else f:= a+1;

writeln('F= 'f);

end.

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

1. Какие команды текстового редактора вы знаете?

2. Что такое блок текста и как его выделить?

3. Какие операторы используются для программирования разветвлений?

4. Как выполняются операторы перехода?

5. Какую из функций: Sin(x), Abs(x), Trunc(x) можно заменить условным оператором ifx<0 then x:= -x?

Задачи

 

1. Даны действительные положительные числа x, y, z. Выяснить, существует ли треугольник с длинами сторон x, y, z.

2. Дано действительное а. Для функции f(a), график которой представлен на рисунке, вычислить f(a).

3. Даны три действительных числа. Вывести на экранте, которые принадлежат интервалу (1, 3).

4. Даны действительные числа x, y. Если x, y отрицательны, то каждое значение заменить его модулем; если оба значения не отрицательны, то каждое значение уменьшить в 10 раз. Вывести х и у на экран.

5. Определить и вывести на печать номер квадранта, в котором расположена точка М(x,y), x и y заданные вещественные числа.

6. Из величин, определяемых выражениями a=sinx, b=cosx, c=ln|x| при заданном х, определить и вывести на экран дисплея минимальное значение.

7. Определить, какая из двух точек - M1(x1,y1) или M2(x2,y2) - расположена ближе к началу координат. Вывести на экран дисплея координаты этой точки.

8. Определить, какая из двух фигур (круг или квадрат) имеет большую площадь. Известно, что сторона квадрата равна а, радиус круга r. Вывести на экран название и значение площади большей фигуры.

9. Определить, попадает ли точка M(x,y) в круг радиусом r с центром в точке (x0,y0)

10. Даны четыре действительных числа. Вывести на экранте, которые принадлежат интервалу (-1, 5).

 

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-03-02 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: