数学関数
- 本章で用いる実習用ファイル
SUMやAVERAGEと同類の、しかし少しマイナーな関数群の紹介。一見あまり縁がなさそうに見える関数もちょっとしたところで便利に使えたりする。特にINT関数、MOD関数は必須。
絶対値:ABS(数値)
ABS関数は数値の絶対値(負の値の時は符号が反転して正の値になる)を返す関数である。
IF(数値>0, 数値, -1*数値)と同じ。
A | B | C | |
---|---|---|---|
1 | 数値 | 絶対値 | |
2 | 10 | =ABS(A2) | |
3 | 10.5 | 10.5 | |
4 | -10.5 | 10.5 | |
5 |
(正負)符号:SIGN(数値)
SIGN関数は数値の符号を返す(正:1, 負:-1)関数である。
IF(数値>0, 1, IF(数値 = 0, 0, -1))と同じ。
A | B | C | |
---|---|---|---|
1 | 数値 | 正負 | |
2 | 10 | =SIGN(A2) | |
3 | 10.5 | 1 | |
4 | -10.5 | -1 | |
5 |
A | B | C | |
---|---|---|---|
1 | 数値 | 数値 | |
2 | 10 | =SIGN(A2)*ABS(A2) | |
3 | 10.5 | 10.5 | |
4 | -10.5 | -10.5 | |
5 |
元に戻るだけだから、さしあたりは意味が無い…が
平方根:SQRT(数値)
SQRT関数は数値の平方根を返す関数である。
A | B | C | |
---|---|---|---|
1 | 数値 | 平方根 | |
2 | 2 | =SQRT(A2) | |
3 | 3 | 1.732050808 | |
4 | -5 | #NUM! | |
5 |
数値を丸める:ROUND(数値,桁数), ROUNDUP(数値,桁数), ROUNDDOWN(数値,桁数)
- ROUND関数は数値を桁数に四捨五入する。
- ROUNDUP関数は数値を桁数に切り上げる。
- ROUND関数は数値を桁数に切り捨てる。
桁数 | 意味 | 例 |
---|---|---|
… | … | |
2 | 小数点第2位 | 123.45 |
1 | 小数点第1位 | 123.4 |
0 | 整数に丸める | 123 |
-1 | 10の位 | 120 |
-2 | 100の位 | 100 |
… | … |
A | B | C | D | E | |
---|---|---|---|---|---|
1 | 1234.567 | ||||
2 | |||||
3 | 丸める桁数 | 四捨五入 | 切り捨て | 切り上げ | |
4 | 整数 | =ROUND(A1,0) | =ROUNDDOWN(A1,0) | =ROUNDUP(A1,0) | |
5 | 小数点第1位 | =ROUND(A1,1) | =ROUNDDOWN(A1,1) | =ROUNDUP(A1,1) | |
6 | 10の位 | =ROUND(A1,-1) | =ROUNDDOWN(A1,-1) | =ROUNDUP(A1,-1) | |
7 |
A | B | C | D | E | |
---|---|---|---|---|---|
1 | 1234.567 | ||||
2 | |||||
3 | 丸める桁数 | 四捨五入 | 切り捨て | 切り上げ | |
4 | 整数 | 1235 | 1234 | 1235 | |
5 | 小数点第1位 | 1234.6 | 1234.5 | 1234.6 | |
6 | 10の位 | 1230 | 1230 | 1240 | |
7 |
整数に丸める:INT(数値),TRUNC(数値)
INT関数・TRUNC関数は数値を整数にする。小数点以下は切り捨てる。
- INT関数
- 数値が負の値のときにはその数値を超えない整数にする。
- TRUNC関数
- 整数部を切り捨てる
A | B | C | D | |
---|---|---|---|---|
1 | 数値 | INT | TRUNC | |
2 | 2.2 | =INT(A2) | =TRUNC(A2) | |
3 | 1.1 | 1 | 1 | |
4 | 0.6 | 0 | 0 | |
5 | -0.7 | -1 | 0 | |
6 | -1.4 | -2 | -1 | |
7 | -2.2 | -3 | -2 | |
8 |
- INT関数は1方向(無限大方向)
- TRUNC関数は0を中心(ROUNDDOWN関数と同じ)
ROUND関数とINT関数
INT関数と簡単な四則演算でROUND-関数と同等のことができる。
A | B | C | D | E | |
---|---|---|---|---|---|
1 | 1234.567 | ||||
2 | |||||
3 | 丸める桁数 | 四捨五入 | 切り捨て | 切り上げ | |
4 | 整数 | =INT(A1+0.5) | =INT(A1) | =-INT(-A1) | |
5 | 小数点第1位 | =INT(A1*10+0.5)/10 | =INT(A1*10)/10 | =-INT(-A1*10)/10 | |
6 | 10の位 | =INT(A1/10+0.5)*10 | =INT(A1/10)*10 | =-INT(-A1/10)*10 | |
7 |
A | B | C | D | E | |
---|---|---|---|---|---|
1 | 1234.567 | ||||
2 | |||||
3 | 丸める桁数 | 四捨五入 | 切り捨て | 切り上げ | |
4 | 整数 | 1235 | 1234 | 1235 | |
5 | 小数点第1位 | 1234.6 | 1234.5 | 1234.6 | |
6 | 10の位 | 1230 | 1230 | 1240 | |
7 |
負の値のときはROUND関数とは同じ結果にはならない。
A | B | C | D | E | |
---|---|---|---|---|---|
1 | -1234.567 | ||||
2 | |||||
3 | 使用関数 | 四捨五入 | 切り捨て | 切り上げ | |
4 | INT | =INT(A1+0.5) | =INT(A1) | =-INT(-A1) | |
5 | ROUND | =ROUND(A1,0) | =ROUNDDOWN(A1,0) | =ROUNDUP(A1,0) | |
6 |
A | B | C | D | E | |
---|---|---|---|---|---|
1 | -1234.567 | ||||
2 | |||||
3 | 使用関数 | 四捨五入 | 切り捨て | 切り上げ | |
4 | INT | -1235 | -1235 | -1234 | |
5 | ROUND | -1235 | -1234 | -1235 | |
6 |
課題:INTとROUND(形式)
ROUND-関数を用いず、負の値のときにROUND-関数と同じ結果になるようにINT関数・ABS関数・SIGN関数を用いて式を立てよ。
A | B | C | D | E | |
---|---|---|---|---|---|
1 | -1234.567 | ||||
2 | |||||
3 | 使用関数 | 四捨五入 | 切り捨て | 切り上げ | |
4 | INT(0基準) | -1235 | -1234 | -1235 | |
5 |
課題:購入品(形式)
下表を完成させよ。
A | B | C | D | E | F | G | H | |
---|---|---|---|---|---|---|---|---|
1 | 購入品目 | 本体価格 | 消費税 | 支払額 | ポイント | 税率 | ||
2 | ThinkPaa T15 | 167999 | 10% | |||||
3 | IdeaVision M14 | 54999 | 5499 | 60490 | 550 | |||
4 | Type-Cドック | 29799 | 2979 | 32770 | 300 | |||
5 | VT510 Tower | 147590 | 14759 | 162340 | 1480 | |||
6 | IMAGEFORCE | 19880 | 1988 | 21860 | 200 | |||
7 | Logic MX300 | 14999 | 1499 | 16490 | 150 | |||
8 | 合計 | 478740 | 4360 | |||||
9 |
- 支払額
- 10円未満は切り捨て
- ポイント
- 本体価格に対して1%で1ポイント。ただし10ポイント未満は切り上げ
除算した余り:MOD(数値, 除数)
MOD関数は数値を除数で割った余りを返す関数である。
より正確には 「数値ー商(INT(数値/除数))×除数」がMOD関数の戻り値「余り」である。
A | B | C | D | E | |
---|---|---|---|---|---|
1 | 数値 | 除数 | 商 | 余り | |
2 | 5 | 2 | =INT(A2/B2) | =MOD(A2,B2) | |
3 | 2000年9月3日 | 7 | 5253 | 1 | |
4 | 5.5 | 1.4 | 3 | 1.3 | |
5 | -5 | 2 | -3 | 1 | |
6 |
課題:閏年(形式)
表に西暦年を入力したら閏年判定をするように式を立てよ。
セルA2に入力された値(西暦)が閏年ならセルB2に「閏年」と表示し、閏年以外または入力前は空白のままにせよ。
- 閏年の定義
- 4で割りきれる年は閏年、ただし100で割り切れても400で割りきれない年は平年
A | B | C | |
---|---|---|---|
1 | 西暦 | 判定 | |
2 | 2023 | ||
3 |
順位:RANK.EQ(数値, 範囲, 順序), 順位:RANK.AVG(数値, 範囲, 順序)
RANK.EQは範囲の中から数値の順位を返す関数である。
- 順序が0の時は降順
- 順序が1の時は昇順
同順のときには順位の最上位の数値(整数)を返す。
A | B | C | D | |
---|---|---|---|---|
1 | 点数 | 順位 | ||
2 | 山岸 | 90 | =RANK.EQ(B2,$B$2:$B$10,0) | |
3 | 小片 | 95 | 2 | |
4 | 新沼 | 78 | 7 | |
5 | 谷本 | 68 | 9 | |
6 | 岸本 | 97 | 1 | |
7 | 浅倉 | 95 | 2 | |
8 | 小野 | 83 | 5 | |
9 | 小野田 | 72 | 8 | |
10 | 秋山 | 79 | 6 | |
11 |
RANK.AVGは範囲の中から数値の順位を返す関数である。
- 順序が0の時は降順
- 順序が1の時は昇順
同順のときには順位の平均を返す。
A | B | C | D | |
---|---|---|---|---|
1 | 点数 | 順位 | ||
2 | 山岸 | 90 | =RANK.AVG(B2,$B$2:$B$10,0) | |
3 | 小片 | 95 | 2.5 | |
4 | 新沼 | 78 | 7 | |
5 | 谷本 | 68 | 9 | |
6 | 岸本 | 97 | 1 | |
7 | 浅倉 | 95 | 2.5 | |
8 | 小野 | 83 | 5 | |
9 | 小野田 | 72 | 8 | |
10 | 秋山 | 79 | 6 | |
11 |
課題:スポーツテスト(形式)
スポーツテストの結果から、両競技の順位を付けたい。好成績のものが上位になるようにし、同順はその中の最上位の順位にせよ。
A | B | C | D | E | F | |
---|---|---|---|---|---|---|
1 | 幅跳び | 順位 | 50m走 | 順位 | ||
2 | 山岸 | 3.67 | 7.5 | |||
3 | 小片 | 4.12 | 2 | 7.0 | 3 | |
4 | 新沼 | 3.87 | 5 | 8.0 | 6 | |
5 | 谷本 | 2.69 | 9 | 8.5 | 8 | |
6 | 岸本 | 3.56 | 7 | 6.9 | 1 | |
7 | 浅倉 | 4.03 | 3 | 7.3 | 4 | |
8 | 小野 | 4.31 | 1 | 6.9 | 1 | |
9 | 小野田 | 3.94 | 4 | 8.3 | 7 | |
10 | 秋山 | 2.96 | 8 | 10.7 | 9 | |
11 |
課題:自然数反転(形式)
セルA2に9桁までの自然数を入力すると、その桁を反転させた自然数を生成したい。表では最終的にはC列に目的の自然数が生成する。この表を完成させよ。
A | B | C | D | E | |
---|---|---|---|---|---|
1 | 10で割る | 余り | D列に余りを1桁目に加える | 10を掛ける | |
2 | 12345 | ||||
3 | |||||
4 | |||||
5 | |||||
6 | |||||
7 | |||||
8 | |||||
9 | |||||
10 | |||||
11 | |||||
12 |
A | B | C | D | E | |
---|---|---|---|---|---|
1 | 10で割る | 余り | D列に余りを1桁目に加える | 10を掛ける | |
2 | 12345 | ||||
3 | 1234 | 5 | 5 | 50 | |
4 | 123 | 4 | 54 | 540 | |
5 | 12 | 3 | 543 | 5430 | |
6 | 1 | 2 | 5432 | 54320 | |
7 | 0 | 1 | 54321 | ||
8 | 0 | 0 | |||
9 | 0 | 0 | |||
10 | 0 | 0 | |||
11 | 0 | 0 | |||
12 |
C7に目的の自然数が生成された。