Занятие III III Функции для порядковых типов

Тема: Стандартные функции и процедуры. Применение в простейших линейных программах

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

Функция – это такая организация преобразования переданного ей значения, при которой это измененное значение передается обратно.

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

Познакомимся с основными, наиболее часто используемыми.

I Арифметические функции

1) Abs(x), где аргумент и результат являются переменными целого или вещественного типа – вычисляет модуль (абсолютную величину) числа х;

2) Cos(x), где аргумент и результат являются переменными вещественного типа – вычисляет косинус х;

3) Sin(x), где аргумент и результат являются переменными вещественного типа – вычисляет синус х;

4) Frac(x), где аргумент и результат являются переменными вещественного типа – выделяет дробную часть числа х;

5) Int(x), где аргумент и результат являются переменными вещественного типа – выделяет целую часть числа х;

6) Pi, где результат является переменной вещественного типа – вычисляет значение

7) Random(x), где аргумент и результат являются переменными целого типа – генерирует случайное число в пределах от 0 до х включительно. Если параметр х не задан, то формируется вещественное число от 0 до 1. Перед использованием данной функции нужно инициализировать генератор случайных чисел при помощи процедуры Randomize (см. ниже);

8) Sqr(x), где аргумент и результат являются переменными целого или вещественного типа – вычисляет ;

9) Sqrt(x), где аргумент и результат являются переменными целого или вещественного типа – вычисляет .

II Функции преобразования типов

1) Chr(x), где аргумент типа Byte, а результат типа Char– возвращает символ, у которого код в таблице ASCII равен х;

2) Ord(x), где аргумент может быть любого порядкового типа, а результат типа LongInt – возвращает порядковый номер значения х при начале нумерации с нуля;

3) Round(x), где аргумент вещественного типа, результат типа LongInt – округляет число х до ближайшего целого;

4) Trunc(x), где аргумент вещественного типа, результат типа LongInt – выделяет целую часть числа х.

III Функции для порядковых типов

1) Odd(x), где аргумент типа LongInt, а результат логического типа – определяет, является ли число четным (результат false) или нечетным (результат true);

2) Pred(x), где аргумент и результат любого порядкового типа – получает предшествующее значение;

3) Succ(x), где аргумент и результат любого порядкового типа – получает последующее значение;

4) Upcase(x), где аргумент и результат типа Char – преобразует букву латинского алфавита в соответствующую ей заглавную (буква х может быть как строчной, так и заглавной).

IV Процедуры для порядковых типов

1) Dec(x), где аргумент любого порядкового типа – уменьшает значение переменной х на 1;

2) Dec(x,n), где х любого порядкового типа, а n типа LongInt – уменьшает значение переменной х на n;

3) Inc(x), где аргумент любого порядкового типа – увеличивает значение переменной х на 1;

4) Inc(x,n), где х любого порядкового типа, а n типа LongInt – увеличивает значение переменной х на n;

5) Randomize – инициализирует генератор случайных чисел.

Правила применения функций:

• чтобы воспользоваться функцией, нужно указать ее в правой части оператора присваивания;

• при обращении к функции необходимо в круглых скобках указать ее аргументы;

• в разделе описания переменных правильно указывайте типы переменных, которые хотите употребить в качестве аргумента или результата функции;

• в одном выражении можно обратиться к нескольким функциям.

Правила применения процедур:

• для выполнения процедуры ее надо вызвать в программе в виде оператора;

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

Задача. Найти значения выражений:

a) (1+x)2 b) c) |a+ bx|

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

a) (1+x)2 à sqr(1+x)

b) à sqrt((1+A)*5)

|A+ bx|
c) à abs(A+b*x)

Теперь уже можно переходить к составлению программы.

Program Primer;

Uses

Crt;

Var

A: word; {так как подкоренное выражение должно быть положительно}

b, x, Rezult: integer;

Begin

ClrScr;

Writeln(‘Введите значения переменных (A-положительно)’);

Write(‘A=’);

Readln(A);

Write(‘b=’);

Readln(b);

Write(‘x=’);

Readln(x);

Result:= sqr(1+x);

Write (‘sqr(1+x)=’, Rezult);

Result:= sqrt((1+A)*5);

Write (‘sqrt((1+A)*5)=’, Rezult);

Result:= abs(A+b*x);

Write (‘abs(A+b*x)=’, Rezult);

Readln;

End.

Задание. Наберите программу, протестируйте, добавьте комментарий, сохраните файл и распечатайте листинг.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: