Arithmetic
FractionExponent
Name: FractionExponent
Type: integer
Calculates a fraction ( numerator / denominator ) to the power of exponent, multiplied by precision.
Since Gate only supports integers, the precision parameter is used to get an integer which represents the result (which should be a fraction), multiplied by the provided precision. The end value will be an integer, meaning the result would be rounded down.
numerator
integer
yes
denominator
integer
yes
exponent
integer
yes
precision
integer
yes
source frac_exp: integer = FractionExponent {
numerator: 9,
denominator: 12,
exponent: 5,
precision: 10**10
}
frac_exp == 2373046875PercentageDiff
Name: PercentageDiff
Type: integer
Calculates the percentage change between before and after. The change will always be a non-negative number, regardless of its direction.
before cannot be 0
before
integer
yes
after
integer
yes
source percentage_diff1: integer = PercentageDiff {
before: 25,
after: 100
}
source percentage_diff2: integer = PercentageDiff {
before: 100,
after: 25
}
percentage_diff1 == 300
percentage_diff2 == 75Approximately
Name: Approximately
Type: boolean
Checks whether source approximates target by percent percents.
percent must be non-negative.
source
integer
yes
target
integer
yes
percent
integer
yes
source approximation: integer = Approximately {
source: 105,
target: 100,
percent: 10
}
approximation == trueLast updated