SenseTalkの算術計算
SenseTalkでは、数学的な演算子やさまざまなコマンドや関数を使用して数学的な操作を実行することができます。演算子の使用方法についての詳細な情報は、Expressions ページを参照してください。このページではSenseTalkで表現を使用する基本的な方法を説明し、特定の数学演算子(+、-、*、その他の演算子)と比較や論理演算子などの他の有用な概念について説明するページへのリンクがあります。
SenseTalkの算術コマンドと関数は、数値を操作するための便利なツールを提供しています。算術コマンドは、コンテナに格納された数値を変更するために使用できます。これらのコマンドは+、-、*、/の演算子と同じ算術関数を実行します。違いは、これらのコマンドがオペランドの一つをコンテナから取り出し、計算結果をそのコンテナに戻すことです。算術関数は数値を操作します。これらの関数を使用して、さまざまな方法で数値を操作することができます。
算術計算に関連する話題であるPoints and Rectanglesでは、SenseTalkが幾何学的な点と矩形の概念をどのように理解しているかについて説明しています。任意の2つの数のリスト、またはコンマで区切られた2つの数からなるテキスト文字列は、点として扱うことができます。Points and Rectanglesのページで説明されている関数は、点や矩形の各成分値を抽出するために使用できます。
算術コマンド
算術コマンドは4つあります:
これらを使用して、コンテナに格納された値を変更します。これらのコマンドは+、-、*、/の演算子と同じ算術関数を実行します。違 いは、これらのコマンドがオペランドの一つをコンテナから取り出し、計算結果をそのコンテナに戻すことです。
Add
コマンド
動作: add
コマンドは、コンテナ内の値に数値を追加し、合計によりコンテナ内の値を置き換える場合に使用します。値のリストを追加することもできますが、ソースリストと宛先リストの両方が同じ数のアイテムを含んでいる必要があります。ソースリストからの各アイテムは、宛先コンテナの対応するアイテムに追加されます。 NumExpr はソース表現です。これは数値、任意の数式、または他のコンテナであることができます。 Chunk は、コンテナの一部を説明するチャンク表現です(行、単語、アイテム、または文字)。 Container は任意のコンテナです。
Syntax:
add numExpr to {chunk of} container
例:
add amount to dollarsVariable
add 37 to item 2 of line 3 of scores
add speed * time to item 1 of distances
add [10,5] to centerPoint
文法:
Subtract
コマンド
動作: subtract
コマンドは、コンテナ内の値から数値を引く場合に使用します。結果によりコンテナ内の値を置き換えます。値のリストを引くことができますが、ソースリストと宛先リストの両方が同じ数のアイテムを含んでいる必要があります。ソースリストからの各アイテムは、宛先コンテナの対応するアイテムから引かれます。 NumExpr はソース表現です。これは数値、任意の数式、または他のコンテナであることができます。 Chunk は、 コンテナの一部を説明するチャンク表現です(行、単語、アイテム、または文字)。 Container は任意のコンテナです。
Syntax:
divide score by totalCount
例:
subtract checkAmt from accountBalance
subtract 1 from property CountDown of gameController
subtract rate * pmt from line 4 of amortization
subtract [1,2] from boxDimensions
Multiply
コマンド
動作: multiply
コマンドは、コンテナ内の値を別の数値で掛ける場合に使用します。結果によりコンテナ内の値を置き換えます。値のリストを掛けることができますが、ソースリストと宛先リストの両方が同じ数のアイテムを含んでいる、またはソースが単一の値であることが必要です。宛先コンテナの各アイテムは、ソースリストの対応するアイテム、またはソース値で掛けられます。 NumExpr はソース表現です。これは数値、任意の数式、または他のコンテナであることができます。 Chunk は、コンテナの一部を説明するチャンク表現です(行、単語、アイテム、または文字)。 Container は任意のコンテナです。
Syntax:
multiply {chunk of} container by numExpr
例:
multiply item 3 of line x of table by 2
Divide
コマンド
動作: divide
コマンドは、コンテナ内の値を別の数値で除算する場合に使用します。結果によりコンテナ内の値を置き換えます。値のリストを除算することができますが、ソースリストと宛先リストの両方が同じ数のアイテムを含んでいる、またはソースが単一の値であることが必要です。宛先コンテナの各アイテムは、ソースリストの対応するアイテム、またはソース値で除算されます。 NumExpr はソース表現です。これは数値、任意の数式、または他のコンテナであることができます。 Chunk は、コンテナの一部を説明するチャンク表現です(行、単語、アイテム、または文字)。 Container は任意の コンテナです。
Syntax:
divide {chunk of} container by numExpr
例:
divide item 1 of balances by 12
算術関数
これらの関数を使用して数値を操作します。
put 500 as a negative number --> -500
動作: 数値パラメータの絶対値を返します。絶対値はその数値の大きさであり、その符号に関わらず常に正またはゼロです。
Syntax:
abs( numExpr )
構文: the abs of numFactor
numFactor as a positive number
numFactor as a negative number
例:
put abs(-11) -- 11を表示
例
if height is a negative number then put abs(height) into height
Example
put (3 - 16) as a positive number --> 13
例:
Behavior: 値の三角円弧余弦を計算し、ラジアンで表された角度として結果を返します。
Syntax:
put round(6.49) -- 6
abs of numFactor
例:
put acos(0) --> 1.570796 radians
put the acos of 0 --> 1.570796 radians
put acos(0.5) as degrees --> 60 degrees
関連項目:
ACosh
Function
put highestValue of [3,9,13,21,42] --42
Syntax:
put roundToNearest(643,100) -- 600
{the} exp2 of numFactor
例:
put acosh(2.509178) rounded to the nearest degree --> 90 degrees
put the acosh of 1 --> 0 radians
関連項目:
関連: annuity
関数
動作: 指定された期間ごとの利息率と期間数に基づき、一単位の支払いを伴う普通年金の現在価値を計算します。
Syntax:
annuity( interest, periods )
例
put annuity(1%, 32)
関連項目:
- 構文: compound( interest, periods )
- add amount to dollarsVariable
例:
Behavior: 値の三角円弧余弦を計算し、ラジアンで表された角度として結果を返します。
Syntax:
abs( numExpr ) {#exp}
{the} trunc of numFactor](#payment)
例
put asin(0) --> 0 radians
put asin of 1 --> 1.570796 radians
put asin(0.5) as degrees --> 30 degrees
関連項目:
例:
Behavior: 値の逆双曲線サインを計算し、ラジアンで表される角度として結果を返します。
Syntax: exp1( numExpr ) {#exp1}
multiply score by weightingFactor
例
put asinh(0) --> 0 radians
put the asinh of 2.301299 rounded to the nearest degree --> 90 degrees
関連項目:
ATan
関数
動作: パラメータの逆三角関数をラジアンで表現した角度として返します。
Syntax:
atan( numExpr )
the atan of numFactor
Example
put atan(19) --> 1.518213 radians
put the atan of 5 --> 1.373401 radians
ATanh
Function
subtract rate * pmt from line 4 of amortization
Syntax:
atan( numExpr )
構文: the atan of numFactor
例
put atanh(0.917152) rounded to the nearest degree --> 90 degrees
put the atanh of 0 --> 0 radians
構文:
Behavior: ポイントの三角円弧接線を計算し、ラジアンで表された角度として結果を返します。
Syntax:
put atan(19) -- 1.518213を表示
put trunc(6.8) --> 6
構文:
'atanPt' 関数は、他の言語の atan2 関数と同じ機能を提供しますが、パラメータとして 1 つの点または座標を y,x ではなく、x,y 順に受け取ります。
例
put atanPt(123,0) --> 0 radians
put the atanPt of [11,56] --> 1.376837 radians
例
set myPoint to [50,50]
put atanPt(myPoint) as degrees --> 45 degrees
関連項目:
- 構文:
- add [10,5] to centerPoint
ASin
Function
abs
関数
Syntax:
average( numList )
{the} average of numList
動作: パラメータの合計を返します。numList は数値のリスト、カンマで区切られた数値のリストを評価する式、またはこれらの組み合わせであり、任意の深さでネストすることができます。
例
put average(8, 10, 12) -- 10を表示
例:
この例は、機能の使用方法を示すためのコードの不完全な部分です
if the average of [x,y,z] is greater than z then
put "Z is below average!"
end if
文法:
関連: compound
関数
動作: 指定された利率と期間に基づいて、1単位の投資に対する元本プラス利息を計算します。
例:
put compound(7,25%, 6) -- 1.521892を表示
例
put initialInvestment * compound(6.7%, 12) into currentValue
文法:
- 構文: annuity( interest, periods )
- subtract checkAmt from accountBalance
例:
動作: パラメータの三角関数コサインを返します。このパラメータはラジアンで表現される角度です。
Syntax:
cos( numExpr )
{the} cos of numFactor
例:
put cos(18) -- 0.660317を表示
関連項目:
Cosh
Function
Behavior: そのパラメータの双曲線余弦 (ラジアンで表される角度) を返します。
Syntax: cos( numExpr ) {#cos}
{the} exp1 of numFactor
例
put cosh(0) --> 1 (no units specified, so 0 radians assumed)
put cosh of 90 degrees --> 2.509178
Cube Root
関数
動作: パラメータの立方根を計算しま す。
Syntax:
cube root( number )
{the} cube root of number
構文:
例
put cube root (27)--3
関連項目: