Useful API Functions: Unterschied zwischen den Versionen

Aus expecco Wiki (Version 25.x)
Zur Navigation springen Zur Suche springen
Inhalt gelöscht Inhalt hinzugefügt
Zeile 23: Zeile 23:


== [[Number API Functions | Number]] ==
== [[Number API Functions | Number]] ==

==== Literals (i.e. Constant Numbers) ====

1234
<br>16rFFAA or 0xaffe
<br>2r0101 or 0b101010
<br>NrXXX
::integer constant; decimal, hex, binary or any base N; integers may be arbitrary long
0.5
<br>1e5
<br>-1.2e-3
::float constant; actually double precision; use "q" for extra precision
(4/3)
:: a fraction (numerator / denominator)
(4+3i)
:: complex number (real part / imaginary part)

==== Arithmetic Operators ====

Notice: there are no precedence rules for binary operators ('+', '-', '*', etc.) in Smalltalk. All binary operators are evaluated left to right. Use parentheses to specify order.

''number1'' + ''number2'' => Number
<br>''number1'' - ''number2'' => Number
<br>''number1'' * ''number2'' => Number
<br>''number1'' / ''number2'' => Number
::any combination of types is possible (integer, float, fraction, complex)
<br>''number1'' // ''number2'' => Number
::truncating division (truncates towards negative infinity; i.e. the next smaller number)
<br>''number1'' \\ ''number2'' => Number
::remainder from above division
<br>''number1'' quo: ''number2'' => Number
::truncating division (truncates towards zero; same as "//" for positive numbers)
<br>''number1'' rem: ''number2'' => Number
::remainder from quo: (same as "\\" for positive numbers)

==== Math & Trigonometric Functions ====
''aNumber'' ln => Number
<br>''aNumber'' log10 => Number
<br>''aNumber'' log2 => Number
:: logarithm; by default, an error is reported for negative numbers;<br>to get a complex result, use "Complex trapImaginary:[ aNumber ln ]".

''aNumber'' sqrt => Number
:: square root; by default, an error is reported for negative numbers;<br>to get a complex result, use "Complex trapImaginary:[ aNumber sort ]".

''aNumber'' cbrt => Number
:: cubic root.

''aNumber'' exp => Number
<br>''number1'' raisedTo: ''number2'' => Number
:: exponentiation

''aNumber'' sin => Number
<br>''aNumber'' cos => Number
<br>''aNumber'' tan => Number
<br>''aNumber'' arcSin => Number
<br>''aNumber'' arcCos => Number
<br>''aNumber'' arcTan => Number
<br>''aNumber'' arcTan2 => Number
<br>''aNumber'' sinh => Number
<br>''aNumber'' cosh => Number
<br>''aNumber'' tanh => Number
::trigonometric / hyperbolic functions

==== Bitwise Operators ====

''ínteger1'' bitAnd: ''integer2'' => Integer
<br>''ínteger1'' bitOr: ''integer2'' => Integer
<br>''ínteger1'' bitXor: ''integer2'' => Integer
<br>''ínteger1'' bitShift: ''count'' => Integer
<br>''ínteger1'' leftShift: ''count'' => Integer
<br>''ínteger1'' rightShift: ''count'' => Integer
<br>''ínteger1'' bitTest: ''integer2'' => Boolean
:: bitwise operations


Reference: [http://live.exept.de/ClassDoc/classDocOf:,Number Number] and its subclasses
Reference: [http://live.exept.de/ClassDoc/classDocOf:,Number Number] and its subclasses

Version vom 26. September 2020, 02:12 Uhr

This document lists most useful (and most often needed) classes and functions. Be aware, that there are many more to be found in either the class references or via the builtin class browser.

Reference: String inherits from: CharacterArray and SequenceableCollection and Collection

Reference: Collection

Reference: Filename

Streams can be internal (eg. reading from a String) or external (eg. a file stream, pipe or socket).

Reference: Stream

Reference: Number and its subclasses Integer, Float, Fraction, Complex



Copyright © 2014-2024 eXept Software AG