- •Глава 4. Компоненты 30
- •Глава 5. Основы программирования 37
- •Часть I. Delphi и работа в Интегрированной Среде
- •Глава 1. Объектно-ориентированное программирование
- •1.1. Основные понятия и определения
- •1.2. Визуальное программирование интерфейса
- •1.3. Общие вопросы построения программ
- •Глава 2. Проекты Delphi
- •2.1.Файлы проекта
- •2.2.Структура файла головной программы
- •2.3. Окно Интегрированной Среды Разработки Delphi
- •2.4. Панель главного меню и всплывающие меню
- •2.5. Форма и компоненты
- •2.5.1.Окно формы
- •2.5.2. Окно Редактора Кода
- •2.5.3. Инспектор Объектов
- •2.6. Структура модуля приложения
- •Глава 3. Элементы языка Delphi
- •3.1.Типы данных
- •3.1.1. Целый тип
- •3.1.2.Вещественный тип
- •3.1.3. Символьный тип
- •3.1.4. Строковый тип
- •3.1.5. Логический тип
- •3.2. Переменная
- •3.3. Константы
- •3.3.1.Числовые константы
- •3.3.2. Строковые и символьные константы
- •3.3.3. Логические и именованные константы
- •3.4. Инструкция присваивания
- •3.5. Стандартные функции
- •3.5.1.Математические функции
- •Глава 4. Компоненты
- •4.1. Форма и компоненты на форме
- •4.2. Событие и процедура обработки событий
- •Глава 5. Основы программирования
- •5.1. Сохранение проекта, его повторное открывание
- •5.2. Стиль программирования
- •5.3. Порядок разработки проекта
- •5.4. Управляющие структуры языка Delphi
- •5.4.1. Инструкция if
- •5.4.2. Инструкция case
- •5.5. Циклы
- •5.5.1. Инструкция for
- •5.5.2. Инструкция while
- •5.5.3. Инструкция repeat
- •5.5.4. Инструкция goto
- •5.6. Процедуры и функции
- •5.6.1. Структура функции
- •5.6.2. Структура процедуры
- •5.6.3. Ввод и вывод данных в диалоговых окнах
- •5.6.4. Запись инструкций программы
- •5.6.5. Отладка программы
- •5.7. Операции со строками
- •5.7.1. Стандартные функции и процедуры работы со строками
- •5.7.2. Использование операций со строками
- •5.8. Массивы
- •5.8.1. Объявление массива
- •5.8.2. Операции с массивами
- •5.8.3. Стандартные функции обработки массивов
- •5.8.4. Многомерные массивы
3.5. Стандартные функции
Для выполнения часто встречающихся вычислений и преобразований язык Delphi предоставляет программисту ряд стандартных функций. Значение функции связано с ее именем. Поэтому функцию можно использовать в качестве операнда выражения, например в инструкции присваивания. Так, чтобы вычислить квадратный корень, достаточно записать k:=sqrt(n), где Sqrt – функция вычисления квадратного корня,
n – переменная, которая содержит число, квадратный корень которого надо вычислить.
Функция характеризуется типом значения и типом параметров. Тип переменной, которой присваивается значение функции, должен соответствовать типу функции. Точно так же тип фактического параметра функции, т. е. параметра, который указывается при обращении к функции, должен соответствовать типу формального параметра. В противном случае компилятор выводит сообщение об ошибке.
3.5.1.Математические функции
Математические функции (табл. 3.6) позволяют выполнять различные вычисления.
Таблица 3.6
Математические функции
Функция |
Описание |
Аргумент |
Abs(X) |
Абсолютное значение |
Целое или действительное выражение |
Arctan(X) |
Арктангенс X |
|
Cos (X) |
Косинус X |
Аргумент X – угол в радианах |
Exp(x) |
экспонента |
Действительное выражение |
Frac(x) |
Дробная часть аргумента X-Int(x) |
Действительное выражение |
Int(x) |
Целая часть аргумента |
Действительное выражение |
IntPower(X, E) |
Возведение X в целую степень E |
Выражения Extended и Integer |
Ln(X) |
Натуральный логарифм от X |
Действительное выражение |
Log10(X) |
Десятичный логарифм от X |
Extended |
Max(A, B) |
Максимум двух чисел |
Выражения Integer,Int64, Single, Double, Extended |
Min(A,B) |
Минимум двух чисел |
Выражения Integer,Int64, Single, Double, Extended |
Pi |
Число: 3.1415926535897932385 |
|
Random (Range) |
Генерирует последовательность целых или действительных случайных чисел |
Параметр Range не является обязательным. Если параметр не задан, то функция возвращает случайные действительные числа X, равномерно распределённые в интервале 0 < = X < 1. Если задан, например, Random (101) то можно получить последовательность чисел от 0 до 100 |
Power(X, E) |
Возведение X в произвольную степень E |
Выражения Extended |
Round (X) |
Ближайшее целое аргумента |
Действительное выражение |
Sign (X) |
Определяет знак аргумента |
Действительные и целые выражения |
Sqr (X) |
Квадрат аргумента: X*X |
Выражение Extended |
Sqrt (X) |
Квадратный корень |
Выражение Extended |
Sin (X) |
Синус X |
Аргумент X – угол в радианах |
Величина угла тригонометрических функций должна быть выражена в радианах. Для преобразования величины угла из градусов в радианы используется формула
(а* 3.1415256) /180, где: а – величина угла в градусах. Вместо дробной константы 3.1415926 можно использовать стандартную именованную константу pi. В этом случае выражение пересчета угла из градусов в радианы будет выглядеть так: a*pi/180.
3.5.2. Функции преобразования
Функции преобразования (табл. 3.7) наиболее часто используются в инструкциях, обеспечивающих ввод и вывод информации. Например, для того чтобы вывести в поле вывода (компонент Label) диалогового окна значение переменной типа real, необходимо преобразовать число в строку символов, изображающую данное число. Это можно сделать при помощи функции FloatToStr, которая возвращает строковое представление значения выражения, указанного в качестве параметра функции. Например, инструкция
Label1.Caption := FloatToStr (x)
выводит значение переменной х в поле Label 1.
Таблица 3.7
Функции преобразования
Функция |
Значение функции |
Chr(n)
|
Символ, код которого равен n
|
IntToStr(k) |
Строка, являющаяся изображением целого k |
FloatToStr (n) |
Строка, являющаяся изображением вещественного n |
FloatToStrF(n,f,k,m) |
Строка, являющаяся изображением вещественного n. При вызове функции указывают: f — формат (способ изображения); к - точность (нужное общее количество цифр); m — количество цифр после десятичной точки |
StrToInt(s) |
Целое, изображением которого является строка s |
StrToFloat(s) |
Вещественное, изображением, которого является строка s |
Обычно функции используют в качестве операндов выражений. Параметром функции может быть константа, переменная или выражение соответствующего типа. Ниже приведены примеры использования стандартных функций и функций преобразования.
n := Round((x2-xl)/dx);
xl:= (-b + Sqrt(d)) / (2*а);
m := Random(10);
cena := StrToInt(Editl.Text);
Edit2.Text := IntToStr(100);
mes := 'xl=' + FloatToStr(xl);