言葉で数学
組み込み関数の多くは、half of £37、greater of £20 and 選手1人あたり、average of 22 min, 25 min and 24 min のような英語のフレーズでも書けます。このページでは、そうしたフレーズを働きごとにまとめ、対応する関数とあわせて紹介します。計算を声に出して言うときの文のように書きたいときに参照してください。フレーズと関数は同じ働きをするので、ノートの中で読みやすいほうを使ってください。
半分、小さいほう、大きいほう
half of £37 答え £18.50double £80 答え £160.00twice 45 min 答え 90 minthe difference between £120 and £85 答え £35.00lesser of £250 and 10% of £3,000 答え £250.00greater of £15 and 3% of £1,200 答え £36.00smaller of 5 km and 3 miles 答え 4.828032 kmdouble と twice は2倍に、triple は3倍にします。the difference between は、どちらを先に書いても2つの値の差を求めるので、マイナスになることはありません。2つの場所の間では、difference between London and Tokyo はこれまでどおり時差を返します。
lesser of と smaller of は2つの値のうち小さいほうを、greater of と larger of は大きいほうを選びます。上限や最低額の設定に便利です。lesser of の行は10%の手数料に£250の上限を設け、greater of の行は最低£15として3%を請求します。2つの値の単位が違う場合、答えは1つ目の値の単位で表示されます。
clamp は値を範囲内に収めます。値と2つの境界が同じ種類の量であれば、ただの数、金額、量、期間のどれにも使え、単位もそのまま残ります。
clamp 32 between 10 and 25 答え 25clamp 8 from 10 to 25 答え 10clamp 23 °C between 18 °C and 21 °C 答え 21 °Cclamp £120 between £0 and £100 答え £100.00clamp 2.5 kg between 500 g and 2 kg 答え 2 kgサーモスタットの行は設定温度を21 °Cに抑え、その次の行は返金額の上限を£100にしています。
余り、約数、素数
remainder of 50 divided by 6 答え 2gcd of 24 and 36 答え 12lcm of 12 and 15 答え 60is 97 prime 答え trueis 91 a prime number 答え falseremainder of は mod と同じです。50個の卵を6個入りのパックに詰めると、2個余ります。gcd は最大公約数です。24 cm×36 cmのパネルにぴったり敷き詰められる最大の正方形タイルは12 cmです。lcm は最小公倍数なので、12分おきと15分おきに出るバスは、60分ごとに同時に発車します。
素数判定は、2^63までの整数について正確です。小数部分のある数や負の数は false になります。
べき乗、累乗根、対数
10 squared 答え 1002 cubed 答え 83 raised to 4 答え 812 to the power of 10 答え 1,024square root of 144 答え 12cube root of 1,000 答え 10root 4 of 81 答え 3log base 2 of 1,024 答え 101,024 is 2 to what power 答え 10squared と cubed は、² や ³ と同じように直前にあるものに適用されるので、5 m squared は面積5 m²、(5 m) squared は25 m²になります。root n of x と n root of x では、任意の累乗根を求められます。log base b of x と log x base b は任意の底の対数を返し、x is b to what power は同じことを逆の向きから尋ねます。
組み合わせと順列
10 combination 2 答え 4510 choose 3 答え 1208 permutation 3 答え 336n combination k は、順番を問わずに n 個から k 個を選ぶ方法の数を数えます。10人が互いに握手すると、握手は45回です。n choose k も同じ意味で、10 choose 3 は10人から3人を選ぶ方法の数です。n permutation k は、順番を区別して数えます。8人のランナーが金・銀・銅の順位を占める並び方は336通りです。ゴールする順番をすべて数えるには階乗を使います。8! は40,320です。
合計と平均
フレーズの後ろに値をカンマ区切りで並べます。最後の値の前に and を入れてもかまいません。
sum of £12.50, £8.20 and £4.30 答え £25.00average of 22 min, 25 min, 24 min, 41 min and 23 min 答え 27 minmedian of 22 min, 25 min, 24 min, 41 min and 23 min 答え 24 minmin of £4.20, £3.80, £5.10 答え £3.80max of £4.20, £3.80, £5.10 答え £5.10count of £4.20, £3.80, £5.10 答え 3standard deviation of 20 min, 25 min and 30 min 答え 5 mintotal of は sum of と、mean of は average of と同じです。同じ通勤時間でも平均と中央値が違うのは、時間のかかった1日(41分)が平均を押し上げる一方、中央値はほとんど動かないからです。standard deviation of は標本標準偏差を返します。
並べ替えや絞り込みなど、リストの扱い方について詳しくは、リストと統計を参照してください。
ランダムな値
random number between a and b は、a から b まで(両端を含む)の整数を1つ選びます。答えは計算されるたびに変わるので、次の例は結果の一例です。
random number between 1 and 6 答え 4当選番号 = random number between 1 and 250 答え 200random() 答え 0.7220223468| 形式 | 返す値 |
|---|---|
random number between 1 and 10 |
1から10まで(両端を含む)の整数 |
random(1, 6), rand(1, 6) |
同じ働きの関数 |
random(), rand() |
0以上1未満の小数 |
random(0, 1) |
0と1の間の小数(0か1のどちらかではない) |
範囲の境界は単位のない整数で、1つ目が2つ目より大きくてはいけません。上の 当選番号 のように名前に保存した値は、ノートのほかの部分を編集している間は変わらず、ノートを読み込んだときや再計算したときに引き直されます。
フレーズ一覧
| フレーズ | 例 | 結果 | 関数での書き方 |
|---|---|---|---|
half of x |
half of £37 |
£18.50 |
x / 2 |
double x, twice x, triple x |
double £80 |
£160.00 |
x * 2 |
the difference between a and b |
the difference between £120 and £85 |
£35.00 |
abs(a - b) |
a in b(2つの数の場合) |
1 in 5 as % |
20% |
a / b |
lesser of a and b, smaller of |
lesser of 3 and 5 |
3 |
min(a, b) |
greater of a and b, larger of |
greater of 3 and 5 |
5 |
max(a, b) |
clamp x between a and b, clamp x from a to b |
clamp 32 between 10 and 25 |
25 |
clamp(x, a, b) |
remainder of a divided by b |
remainder of 50 divided by 6 |
2 |
a mod b |
gcd of a and b |
gcd of 24 and 36 |
12 |
gcd(a, b) |
lcm of a and b |
lcm of 12 and 15 |
60 |
lcm(a, b) |
is n prime, is n a prime number |
is 97 prime |
true |
|
a divided by b |
17 divided by 5 |
3.4 |
a / b |
a multiplied by b |
£3.50 multiplied by 4 |
£14.00 |
a * b |
x squared, x cubed |
10 squared |
100 |
x^2, x^3 |
a to the power of b, a raised to b, a exponent b |
2 to the power of 10 |
1,024 |
a^b |
square root of x |
square root of 144 |
12 |
sqrt(x) |
cube root of x |
cube root of 1,000 |
10 |
cbrt(x) |
root n of x, n root of x |
root 4 of 81 |
3 |
(汎用の関数なし) |
log base b of x, log x base b |
log base 2 of 1,024 |
10 |
logbase(x, b) |
x is b to what power |
1,024 is 2 to what power |
10 |
logbase(x, b) |
n combination k, n choose k |
10 choose 3 |
120 |
combination(n, k) |
n permutation k |
8 permutation 3 |
336 |
permutation(n, k) |
sum of a, b and c, total of |
sum of 1, 2 and 3 |
6 |
sum([a, b, c]), total([a, b, c]) |
mean of, average of |
mean of 24, 31, 28 and 29 |
28 |
average([…]), avg([…]) |
median of, min of, max of, count of |
median of 3, 7, 9, 12, 40 |
9 |
|
standard deviation of |
standard deviation of 20, 25 and 30 |
5 |
stddev([…]), stdev([…]) |
random number between a and b |
random number between 1 and 10 |
整数 | random(a, b) |
関数での書き方は、組み込み関数リファレンスですべて詳しく説明しています。
組み合わせて使う
小さな5人制サッカーリーグの試合数と参加費を計算する例です。
# 5人制サッカーリーグチーム数 = 6試合数 = チーム数 choose 2 答え 15ピッチ使用料 = £54シーズン費用 = 試合数 * ピッチ使用料 答え £810.00選手数 = 45選手数 / チーム数 rounded down 答え 7remainder of 選手数 divided by チーム数 答え 3選手1人あたり = シーズン費用 / 選手数 答え £18.00参加費 = greater of £20 and 選手1人あたり 答え £20.00どのチームもほかの全チームと1回ずつ対戦する場合、6チームなら15試合が必要です。45人の選手で7人ずつのチームを組むと3人が控えとして余ります。ピッチの使用料だけなら1人あたり£18で済みますが、greater of によって参加費はクラブの最低額である£20になります。