Zoeken…


Invoering

Progress ABL ondersteunt drie getalnotaties: 32- en 64-bits gehele getallen en floats.

operators

Progress ondersteunt +/- als operator. Ze kunnen niet worden overbelast. Divisie geeft altijd een decimaal. Als een van de getallen in een berekening een decimaal is, wordt een decimaal geretourneerd. Anders een INTEGER of INT64 .

Er is geen += of ++ operator. Om een variabele te verhogen of te verlagen, moet u deze aan zichzelf plus of min iets toewijzen. Dus om 1 toe te voegen aan een variabele doe je: i = i + 1.

DEFINE VARIABLE i AS INTEGER     NO-UNDO.
DEFINE VARIABLE j AS INTEGER     NO-UNDO.

i = 3.
j = 2.

DISPLAY i + j. // 3 + 2 = 5

DISPLAY i - j. // 3 - 2 = 1

DISPLAY i / j. // 3 / 2 = 1.5

DISPLAY INTEGER(i / j). //Integer(3/2) = 2.

DISPLAY i * j. //3 x 2 = 6

Meer wiskundige functies

EXP - Retourneert het resultaat van het verhogen van een getal naar een macht.

EXP (basis, exponent)

MESSAGE EXP(10, 2) VIEW-AS ALERT-BOX. // Messages 100

SQRT - Retourneert de vierkantswortel van een getal.

SQRT (nummer)

MESSAGE "The square root of 256 is " SQRT(256) VIEW-AS ALERT-BOX. // Messages 16

MODULO - Bepaalt de rest na deling.

expressie MODULO basis

DISPLAY 52 MODULO 12. //Displays 4

RONDE - Rondt een decimale uitdrukking af op een opgegeven aantal plaatsen na de decimale punt.

RONDE (aantal, precisie)

DISPLAY ROUND(67.12345, 6) FORMAT "99.99999". // 67.12345
DISPLAY ROUND(67.12345, 5) FORMAT "99.99999". // 67.12345
DISPLAY ROUND(67.12345, 4) FORMAT "99.99999". // 67.12350
DISPLAY ROUND(67.12345, 3) FORMAT "99.99999". // 67.12300
DISPLAY ROUND(67.12345, 2) FORMAT "99.99999". // 67.12000
DISPLAY ROUND(67.12345, 1) FORMAT "99.99999". // 67.10000
DISPLAY ROUND(67.12345, 0) FORMAT "99.99999". // 67.00000

TRUNCATE Kapt een decimale uitdrukking af tot een gespecificeerd aantal decimalen, waarbij een decimale waarde wordt geretourneerd.

TRUNCATE (aantal, plaatsen)

DISPLAY TRUNCATE(67.12345, 6) FORMAT "99.99999". // 67.12345
DISPLAY TRUNCATE(67.12345, 5) FORMAT "99.99999". // 67.12345
DISPLAY TRUNCATE(67.12345, 4) FORMAT "99.99999". // 67.12340
DISPLAY TRUNCATE(67.12345, 3) FORMAT "99.99999". // 67.12300
DISPLAY TRUNCATE(67.12345, 2) FORMAT "99.99999". // 67.12000
DISPLAY TRUNCATE(67.12345, 1) FORMAT "99.99999". // 67.10000
DISPLAY TRUNCATE(67.12345, 0) FORMAT "99.99999". // 67.00000

ABSOLUTE - Retourneert de absolute waarde van een getal

DISPLAY ABS(10 - 12). //Displays 2
DISPLAY ABS(-2) = ABS(2). //Displays yes

MINIMUM en MAXIMUM - geeft het kleinste en grootste getal terug

MINIMUM (nummer 1, nummer 2, ... nummer)

MAXIMAAL (nummer 1, nummer 2, ... nummer)

DEFINE VARIABLE i AS INTEGER     NO-UNDO.
DEFINE VARIABLE j AS INTEGER     NO-UNDO.
DEFINE VARIABLE k AS INTEGER     NO-UNDO.

i = 40.
j = 45.
k = 56.

DISPLAY MINIMUM(i, j, k) MAXIMUM(i, j, k). // Displays 40 and 56

Getallen vergelijken

Er zijn standaardfuncties ingebouwd voor het vergelijken van gelijkheid, ongelijkheid enz.

Naam Symbool Alternatief Voorbeeld
Gelijk = EQ i = j
Niet gelijk <> NE i <> j
Minder dan < LT i <j
Minder dan of gelijk <= LE i <= j
Groter dan > = GT i> j
Groter dan of gelijk aan ≥ = GE i> = j

Het symbool kan worden uitgewisseld met het alternatief en vice versa. var1 <> var2 is dus hetzelfde als var1 NE var2 .

U kunt een float vergelijken met een geheel getal, maar u kunt bijvoorbeeld een datum niet vergelijken met een geheel getal.

Willekeurig nummer generator

RANDOM - genereert een willekeurig getal

RANDOM (laag, hoog)

Genereert een pseudo willekeurig geheel getal tussen laag en hoog

// Example that generates 20 random numbers between 1 and 20 (1 and 20 included)
DEFINE VARIABLE i AS INTEGER     NO-UNDO.

DO i = 1 TO 20.
    DISPLAY i RANDOM(1, 20).
    PAUSE.
END.


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow