Єдина Країна!

Головне меню

Наша кнопка

Українські уроки про ІТ

Друзі

Підтримка української армії


Головна Програмування - Delphi Стандартні функції мови Delphi

Стандартні функції мови Delphi
Написав kims   
Неділя, 07 квітня 2013 21:48
Переглядів: 14132

Продовжуємо попередню статтю, де ми створили калькулятор на Delphi. Тепер вдосконалимо його, додавши більш складні математичні операції, але для цього нам знадобляться стандартні функції Delphi.

 

Стандартні функції

Для виконання обчислень і перетворень, що часто зустрічаються, мова Delphi надає програмісту ряд стандартних функцій.

Значення функції пов'язано з її ім'ям. Тому функцію можна використовувати як операнд виразу, наприклад в інструкції присвоєння. Так, щоб обчислити квадратний корінь, достатньо записати a:=Sqrt(n), де Sqrt — функція обчислення квадратного кореня, n — змінна, яка містить число, квадратний корінь якого треба обчислити.

Функція характеризується типом значення і типом параметрів. Тип змінної, якій привласнюється значення функції, повинен відповідати типу функції. Так само тип фактичного параметра функції, тобто параметра, який указується при зверненні до функції, повинен відповідати типу формального параметра. Якщо це не так, компілятор виводить повідомлення про помилку.

 

Математичні функції

Математичні функції дозволяють виконувати різні обчислення над числами.

Таблиця математичних функції

Функція

Значення

Аbs(n)

Абсолютне значення n

Sqrt(n)

Квадратний корінь з n

Sqr(n)

Квадрат n

Sin(n)

Синус n

Cos(n)

Косинус n

Arctan(n)

Арктангенс n

Ехр(n)

Експонента n

Ln(n)

Натуральний логарифм n

Random(n)

Випадкове ціле число в діапазоні від 0 до n-1

Величина кута тригонометричних функцій повинна бути виражений в радіанах. Для перетворення величини кута з градусів в радіани використовується формула (а*3.141525б)/180, де: а— величина кута в градусах; 3.1415926 — число . Замість дробової константи 3.1415926 можна використовувати стандартну іменовану константу PI. В цьому випадку вираз перерахунку кута з градусів в радіани виглядатиме так: a*Pi/180.

 

Функції перетворення

Функції перетворення (табл. нижче) найбільш часто використовуються в інструкціях, що забезпечують введення і виведення інформації. Наприклад, для того, щоб вивести в полі виведення (компонент Label) діалогового вікна значення змінної типу real, необхідно перетворити число в рядок символів, що зображає дане число. Це можна зробити за допомогою функції FloatToStr, яка повертає рядкове представлення значення виразу, вказаного як параметр функції.

Наприклад, інструкція Label1.caption := FloatTostr(x) виводить значення змінної х в полі Label1.

Зверніть увагу, що ці функції дуже важливі і часто будуть застосовуватись в програмах.

Функції перетворення

Функція

Значення функції

Chr(n)

Символ, код якого рівний n

IntToStr(k)

Рядок, що є зображенням цілого (перетворення цілого в рядок)

FloatToStr(n)

Рядок, що є зображенням дійсного n

FloatToStrF(n, f, к,m)

Рядок, що є зображенням дійсного n. При виклику функції указують: f — формат (спосіб зображення); k — точність (потрібна загальна кількість цифр); m — кількість цифр після десяткової крапки

StrToInt(s)

Ціле, зображенням якого є рядок s

StrToFloat(s)

Дійсне, зображенням якого є рядок s

Round(n)

Ціле, отримане шляхом округлення n за відомими правилами

Trunc(n)

Ціле, отримане шляхом відкидання дробової частини n

Frac(n)

Дробове, є дробовою частиною дійсного n

Int(n)

Дробове, є цілою частиною дійсного n

 

Використання функцій

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

 

n := Round((x2-x1)/dx);
x1:= (-b + Sqrt(d)) / (2*а);
m := Random(10);
сеna := StrToInt(Edit1.Text);
Edit2.Text := IntToStr(100);
mes := 'x1=' + FloatToStr(xl);

 

Проект «Інженерний калькулятор»

Задача. Доповнити проект «Простий калькулятор» додатковими функціями, а саме: sin, cos, tg, ctg , квадрат числа, корінь квадратний, модуль тощо.

1. Відкрийте проект «Простий калькулятор» (з попереднього уроку)

2. Поставте на форму ті компоненти, які потрібно для цього проекту.

3. Запрограмуйте кнопки для виконання потрібних функцій: sin, cos, tg, ctg, x^2, sqrt, abs, x^3. Для цього потрібно двічі клацнути на потрібну кнопку і написати відповідний код програми.

4. Відповідні процедури повинні бути записані таким чином:

procedure TForm1.Button9Click(Sender: TObject);
begin
a:=StrToFloat(Edit1.Text);
r:=Sin(a);
Label1.Caption:=FloatToStr(r);
end;

procedure TForm1.Button7Click(Sender: TObject);
begin
a:=StrToFloat(Edit1.Text);
r:=cos(a);
Label1.Caption:=FloatToStr(r);
end;

procedure TForm1.Button13Click(Sender: TObject);
begin
a:=StrToFloat(Edit1.Text);
r:=Sin(a)/cos(a);
Label1.Caption:=FloatToStr(r);
end;

procedure TForm1.Button11Click(Sender: TObject);
begin
a:=StrToFloat(Edit1.Text);
r:=cos(a)/Sin(a);
Label1.Caption:=FloatToStr(r);
end;

procedure TForm1.Button8Click(Sender: TObject);
begin
a:=StrToFloat(Edit1.Text);
r:=Sqr(a);
Label1.Caption:=FloatToStr(r);
end;

procedure TForm1.Button10Click(Sender: TObject);
begin
a:=StrToFloat(Edit1.Text);
r:=Sqrt(a);
Label1.Caption:=FloatToStr(r);
end;

procedure TForm1.Button12Click(Sender: TObject);
begin
a:=StrToFloat(Edit1.Text);
r:=abs(a);
Label1.Caption:=FloatToStr(r);
end;

procedure TForm1.Button14Click(Sender: TObject);
begin
a:=StrToFloat(Edit1.Text);
r:=a*a*a;
Label1.Caption:=FloatToStr(r);
end;
 

 

Практичні завдання для статті

 

Ця стаття входить в курс уроків по Delphi.

Зміст курсу лекцій та практичних занять по Delphi.

 

Кузбит І.М.


( 12 Проголосувало )
Коментарі
Добавити новий
Анонімно   |2015-05-08 10:45:12
Анонімно   |2015-05-08 10:45:54
ти *матюк*
Залишити коментар
Ім`я:
e-mail:
 
Тема:
 
:angry::0:confused::cheer:B):evil::silly::dry::lol::kiss::D:pinch:
:(:shock::X:side::):P:unsure::woohoo::huh::whistle:;):s
:!::?::idea::arrow:
 
Введіть цей настирливий код
Русская редакция: www.freedom-ru.net & www.joobb.ru

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

 

Ввійти



Підписка

Хто онлайн?

Немає
На даний момент 25 гостей на сайті

Український рейтинг
TOP.TOPUA.NET