fbpx

Search

General Algebraic Routines

Модуль и знак числа

function Math.Abs(X: Double): Double;

The Abs function returns the absolute value of a number X. It does this by removing a negative sign, if found.

 Приклад на TechEditor Pascal Script (.PSC):

begin
a := Math.Abs(b + c);
end;

 🛈 Ця функція має системний аналог:

function Abs(X): Double;

function Math.AbsInt(X: Integer): Integer;

Same as Abs, but works with integer numbers.

function Math.Sign(X: Double): Integer;

Returns -1 if X is negative number, 0 if X=0 and +1 is X is positive number.

 Приклад на TechEditor Pascal Script (.PSC):

begin
V1 := Math.Sign(5*5); // V1=1
V2 := Math.Sign(-5*5); // V2=-1
V3 := Math.Sign(-5+5); // V3=0 end;

 🛈 Ця функція має аналог з модуля Math (вкажіть модуль Math в списку uses поточного модулю):

function Sign(X): Integer;

Check Values

function IsInfinite(X: Double): Boolean;

Returns True, if X is "infinite", and False otherwise.

 Приклад на TechEditor Pascal Script (.PSC):

uses Math;

begin
if IsInfinite(3/0) then ShowMessage('∞') else ShowMessage('ok');
end;

function IsNaN(X: Double): Boolean;

Returns True, if X is "not-a-number", and False otherwise.

 Приклад на TechEditor Pascal Script (.PSC):

uses Math;

begin
if IsNan(0/0) then ShowMessage('Not a number!') else ShowMessage('ok');
end;

function IsZero(X, Epsilon: Double): Boolean;

Returns True, if X ~ 0 in accordance with Epsilon tolerance. Otherwise, returns False.

 Приклад на TechEditor Pascal Script (.PSC):

uses Math;

begin
if IsZero(0.000009, 0.0001) then ShowMessage('Zero') else ShowMessage('Not zero');
end;

Extrema

function Math.Max(A, B: Double): Double;

Returns the greater of A, B numbers.

 Приклад на TechEditor Pascal Script (.PSC):

begin
a := Math.Max(b, c);
end;

 🛈 Ця функція має аналог з модуля Math (вкажіть модуль Math в списку uses поточного модулю):

function Max(X): Double;

function Math.MaxInt(A, B: Integer): Integer;

Same as Max, but works with integer numbers.

function Math.Min(A, B: Double): Double;

Returns the smaller of A, B numbers.

 Приклад на TechEditor Pascal Script (.PSC):

begin
a := Math.Min(b, c);
end;

 🛈 Ця функція має аналог з модуля Math (вкажіть модуль Math в списку uses поточного модулю):

function Min(X): Double;

function Math.MinInt(A, B: Integer): Integer;

Same as Min, but works with integer numbers.

Interpolation

function Math.LInterp(x1, x, x2: Double; y1, y2: Double): Double;

Returns the result of linear interpolation according to the formula:

\[y = \frac{(x-x1)(y2-y1)}{x2-x1}+y1\]

If x1=x2, then function returns x1.

 Приклад на TechEditor Pascal Script (.PSC):

begin
X := 1.5;
Y := Math.LInterp(1, X, 2, 100, 200); // y=150
end;

Other Routins

procedure Dec(var X: Integer);

Decrements a variable X by 1.

 Приклад на TechEditor Pascal Script (.PSC):

var
  X: Integer;

begin
  X := 10;
  Dec(X); // here x=9
end;

procedure DivMod(Dividend: Cardinal; Divisor: Word; var Result, Remainder: Word);

Returns the result of an integer division, including the remainder. Dividend is the integer into which you are dividing. Divisor is the value by which to divide Dividend. Result returns the result of the integer division. Remainder returns the remainder (the difference between Result * Divisor and Dividend).

 Приклад на TechEditor Pascal Script (.PSC):

var
  X, Remainder: Word;
begin
DivMod(100, 3, X, Remainder); // 100/3=33.333...; x=33; Remainder=1
end;

procedure Inc(var X: Integer);

Increments a variable X by 1.

 Приклад на TechEditor Pascal Script (.PSC):

var
  X: Integer;

begin
  X := 10;
  Inc(X); // here x=11
end;

function Odd(X: Integer): Boolean;

The Odd function returns True if the given Number is odd. Otherwise, returns False.

 Приклад на TechEditor Pascal Script (.PSC):

begin
if Odd(x) then ShowMessage('x - odd number') else ShowMessage('x - even number');
end;

function Math.Random: Double;

Generates random number within the range 0 <= X < 1.

 Приклад на TechEditor Pascal Script (.PSC):

begin
ShowMessage('Random number: ' + FloatToStr(Math.Random));
end;

 🛈 Ця функція має системний аналог:

Forums, Chats, Streams — Join our Discord Community for Help & Support!

Knowledge Base - Content

Users Online

    No members to show currently
View All

TechEditor 2.0 Overview

Dystlab™ — Project for Engineers

Dystlab™. All rights reserved.

Ukraine, 76006, Ivano-Frankivsk.

E-mail:
technot needed texteditoranother not needed text@dystlabdummy text.store

Telegram:
https://t.me/techeditor

Dystlab™ — торговельна марка, зареєстрована в Державному реєстрі свідоцтв України на знаки для товарів і послуг 26.02.2018, свідоцтво № 238304. Власник: фізична особа-підприємець Артьомов В. Є., ЄДРПОУ/ІНН: 3003314690.