Zenn
🧮

算数を学び直してアルゴリズムを理解する: シリーズの第一歩

2025/02/08に公開


文字拡大縮小と画像削除が可能なバージョンに移動する

どのような人に向けて作られた記事か?

①小学校の算数から学び直したい人
②実用数学技能検定で6級を取りたい人

https://www.su-gaku.net/suken/examination/summary/6q/
https://www.mext.go.jp/a_menu/shotou/new-cs/youryou/syo/san.htm
この記事は、平成20年告示の学習指導要領に則った内容のため中学生から学習する内容も混在します。
この要領には、そろばんを使った演算方法も含まれます。
https://suukiso.com
この記事の内容は上記のサイトを参考に、色々な他情報を[収集,取捨選択]して学び直しに最適な形に仕上げました。
そのため、小学生が初めて学ぶ教材には適していません。
学習順序が指導要領順ではないためです。

この記事を書いた人

zoldof
以下は私の成績です。
合格判定のものに限定します
単位は%です。

成績
級位 残時間率 正答率
6 50.0 93.3
7 46.0 93.3
8 66.0 93.3
9 57.5 100
10 60.0 95.0
11 90.0 100

検定問題
模範解答
*かずかたち検定は未判定なものの問題なく解ける

過去問題集6級
第⚫️回 残時間率 正答率
1 52.0 93.3
2 60.0 93.3
3 48.0 90.0
4 50.0 97.0
5 50.0 97.0
6 36.0 90.0

過去問題集

資格試験本番
級位 残時間率 正答率
6 50.0 93.3

この記事の執筆経緯
「なぜ、算数を学び直したいのか」理由は人によって様々です。
私の場合は、アルゴリズムの理解を極めるのに必要な知識だと認識したからです。
「アルゴリズムとは何か?」はこちらの記事を参照ください。
後付けで「なぜ、算数を学び直したいのか」を再検討した際には、米田優峻さんの書かれた問題解決のための「アルゴリズム×数学」が基礎からしっかり身につく本を参考にしました。

アルゴリズムを学ぶにあたり必要な数学の知識について、
具体的には、書籍の冒頭で[小学校算数,中学数学,高校数学,大学数学の教養レベル]が必要との記載がありました。
*個人的には、より分かりやすくするために[小学数学(算数),中学数学,高校数学,大学数学の教養レベル]=[小,中,高,大教]の分類を推奨します。
また、アルゴリズムを学ぶにあたり必要なプログラミング能力については、
「プログラミングに触れたことがあり、ひとつ以上のプログラミング言語で基礎的な文法を習得していることが望ましい」とのことです。

この書籍の最大の特徴は「有名なアルゴリズムの紹介に終始せず、それに関する数学的知識、そしてアルゴリズム効率化に応用可能な数学的考察を丁寧に解説していること」です。
この書籍は、高校数学までの理解で特に問題がない人にとっては有益な情報源です。
そうではない自分のような人にとっては、数学の復習が必要だと痛感しました。
そこで、学習指導要領と数検の範囲を照合し、以下に項目別でまとめることにしました。
各項目の構成方法としては、個人的に見て学び直しに最適なサイトを再構築し、学習指導要領と比較したときに不足がないか調べて、数検の出題範囲に最適化しています。
まずは小学数学(算数)からです。
よければ参考にしてください。

四則演算とは?

  • 計算の方法に関する四個の法則のこと
  • 四則演算は別名で加減乗除とも呼ばれる
  • 四則演算や加減乗除で求めた答えは[和,差,積,商]である

①四則演算で計算することを、それぞれ[足し算,引き算,掛け算,割り算]と呼ぶ

  • 割り算で割り切れなかったときには商とは別で[余り]が生じる
  • それぞれの計算において、[与えるとき,受け取るとき]で表現方法に違いがある
    • 足し算:[足す数,足される数]
    • 引き算:[引く数,引かれる数]
    • 掛け算:[掛ける数,掛けられる数]
    • 割り算:[割る数,割られる数]

②加減乗除で計算することを、それぞれ[加算,減算,乗算,除算]と呼ぶ

  • 除算で割り切れなかったときには商とは別で[剰余]が生じる
  • それぞれの計算において、[与えるとき,受け取るとき]で表現方法に違いがある
    • 加算(加法):[加数,被加数]
    • 減算(減法):[減数,被減数]
    • 乗算(乗法):[乗数,被乗数]
    • 除算(除法):[除数,被除数]

この記事における四則演算の扱い

四則演算と加減乗除の記載方法について混同して使われることが多い
特に説明の文章が長くなってしまうときに加減乗除の記載方法をつかう
以降の項目では基本的に四則演算の記載方法に従うものとする

四則演算の優先順位

掛け算と割り算が優先される
四則演算の中でも括弧の付いている演算が最優先である
なぜ掛け算と割り算が優先されるようになったのか?
https://math-fun.net/20210506/13757
このサイトの説明を引用すると

掛け算優先の理由(引用部分)
掛け算を「足し算をまとめて書いたもの」と捉えたい状況がよくあって、
その状況を式に表すのに簡単になるのが、掛け算優先ルールだから説です。

例えば、9個のアメを4人で2個ずつ分け合うことを考えましょう。
掛け算を使わずにこの状況を表すと、
92222=19−2−2−2−2=1です。これは面倒くさいので、
2×4=2+2+2+22×4=2+2+2+2という掛け算記号を導入すると、
92×4=19−2×4=1と表せます。

もし、足し算引き算優先のルールで同一の式を書こうとすると、
9(2×4)=19−(2×4)=1とカッコを必要とすることになります。
2×42×4という式が登場したら、ハナからそこは4回足してまとめた結果8ですよ」
と決めておくことで、カッコを使わない簡単な式で表すことができています。

割り算優先の理由(補足)
割り算を「引き算をまとめて書いたもの」と捉えたい状況がよくあって、
その状況を式に表すのに簡単になるのが、割り算優先ルールだから説です。

例えば、9個のアメを4人で2個ずつ分け合って1人だけ3個になる場合を考えましょう。
9個は1個と8個に分けられるので、割り算を使わずにこの状況を表すと、
1+8222=31+8-2-2-2=3です。これは面倒くさいので、
8÷4=82228÷4=8-2-2-2という割り算記号を導入すると、
1+8÷4=31+8÷4=3と表せます。

もし、足し算引き算優先のルールで同一の式を書こうとすると、
1+(8÷4)=31+(8÷4)=3とカッコを必要とすることになります。
8÷48÷4という式が登場したら、8から結果を414-1回引いてまとめた結果2ですよ」
と決めておくことで、カッコを使わない簡単な式で表すことができています。

優先順位の歴史的な理由

  • 推察:四則演算に対する根本的な捉え方を統一するための工夫ではないか
  • 経緯:古代から続く慣習に基づいたものであるのは確かだが誰がどの時点から優先順位を決めたかは不明である
  • 結論:優先順位のある理由は慣習的なもので算数を使うにあたり世界的な基準があったほうが無難だから
  • 発展:自然発生的に決まった慣習であるなら逆算世界の仕組みを検討する余地がある

足し算と引き算が優先される世界を想像してみる

足し引きしたものを掛け算する仕組みの世界が存在するとして、それはどのようなものだろうか?

  • 掛け算:部品の足し引きを消費者が行い、製品の組立を業者に依頼する
  • 割り算:部品の足し引きを消費者が行い、製品の分解を業者に依頼する

現在わたし達が生きている世界は、以下のような仕組みで動いている

  • 掛け算:製品の組立を業者が行い、組立済み製品を消費者が購入する
  • 割り算:製品の分解を業者が行い、分解済み部品を消費者が購入する

四則演算の法則

物の個数で説明できる

交換法則:3+7=7+33+7=7+32×4=4×22×4=4×2
というように先頭の数と位置を、優先順位に従って交換できるという法則
*足し算や掛け算については先頭と交換可能
*先頭以外なら、引き算や割り算も交換可能

結合法則:(2+3)+5=2+(3+5)(2+3)+5=2+(3+5)(3×6)×2=3×(6×2)(3×6)×2=3×(6×2)
というように括弧をどこにつけても計算結果は同じという法則
*足し算や掛け算の交換法則があるから
*引き算や割り算の交換法則は適用できない
↑引き算の括弧式を展開すると足し算になってしまう場合があるから
↑割り算の括弧式を展開すると掛け算になってしまう場合があるから

分配法則:3×(5+2)=3×5+3×23×(5+2)=3×5+3×2
というように括弧を外せるという法則
○優先順位の高い演算を低い演算に対して分配できる
・[掛け算や割り算]を[足し算や引き算]に分配することは可能
*この法則の逆の操作では、共通する数を見つけてまとめることができる

✕優先順位の同じ演算での分配は余分な足し算や掛け算をするので間違いである
・[足し算や引き算]を[足し算や引き算]に分配したり[掛け算や割り算]を[掛け算や割り算]に分配するのは間違い
✕優先順位の低い演算から高い演算への分配は優先順位に反するので間違いである
・[足し算や引き算]を[掛け算や割り算]に分配するのは間違い

数と計算

十進位取り記数法

0から9の10個の数字を使って数を表す方法のこと

筆算(ひっさん)

説明を簡略化するため、加減乗除の呼称を使っています

  • 加算:1桁の数同士の加算を繰り返して答えを求める
  • 減算:[1桁の数同士]もしくは[2桁の数から1桁の数]の減算を繰り返して答えを求める
  • 乗算:段が増えるごとに各計算結果の位はひとつ左にずれる
    ①一段目:[乗数の一の位]が[被乗数]の[各位個の各位倍]あるので足し合わせる
    →[被乗数]の[一の位の1倍,十の位の10倍,百の位の100倍,…]
    ②二段目以降:[乗数の十の位]が[被乗数]の[各位個の各位倍の10倍]あるので足し合わせる
    →[被乗数]の[一の位の1倍,十の位の10倍,百の位の100倍,…]の10倍
    *2桁以上の数と1桁以上の数の乗算を計算過程で1桁同士の乗算に変換するために筆算をつかう
    ↑九九よりも上を学習しないため
    *乗数か被乗数の末尾が0のときには右にずらし、計算結果をずらし量の回数だけ10倍することで計算の手間を省ける
  • 除算:
    除数と商部分の乗算結果を桁ごとに求めて最終結果が被除数と合致するか調べる
    求めたい答えは出題により[整数のみ,整数と剰余,小数]の違いがある
    ①被除数を除数の桁まで調べる
    ②①の被除数部分が除数以上なら該当桁より先の桁は無視し、除数未満なら⑤へ
    ③①の被除数部分が除数の何倍かを記号上部で被除数部分最小桁にあたる箇所に、その乗算結果を被除数部分の下部に、それぞれ記載する
    ④③より[被除数部分-乗算結果]を求めたら、新たに区切り線を引き下部に記載する
    ⑤④右側に被除数部分右側の直近の桁を下ろして①で言う被除数とする
    *求めたい答えが小数の場合は直近の桁を0として補う
    ⑥求めたい答えを得られるまで①に戻る
    *答えが求まった時点で直近以降の桁に0が残っていれば、記号の上に追記する

概数

  • [四捨五入,切り上げ,切り捨て]を活用する
    *なかでも四捨五入がよくつかわれる
  • [「千の位までの概数で求めよ」→千の位を四捨五入,「上から2桁の概数で求めよ」→上から3桁目を四捨五入]
    *掛け算や割り算なら計算結果も概数で求める

最大公約数と最小公倍数

予備知識

約数:ある数を割り切れる整数
素数:1と自身の数以外に約数を持たない数
*約数を2個だけ持つ数

ある2つの数について調べる場合

ある数は整数か小数か問わない

最大公約数
すだれ算をつかって求める
*すだれ算で公約数を探すときには小さい素数から始めることで、素数の倍数で探す手間を省いている
*「すだれ算」は「連除法」とも言う

最小公倍数
すだれ算をつかって求める
ある数は最大公約数で割りきれて商が求まる
それぞれの商を掛け合わせて商の最小公倍数を求め、さらに最大公約数を掛け算して最小公倍数を求める

  • 3と6の最小公倍数は3×6=183×6=18の18ではなく6である
    ↑式を分解すると(1×3)×(2×3)=6×3(1×3)×(2×3)=6×3であり最大公約数3が混在している
    ↑左右両方を3で割り算すると(1×2)×3=6(1×2)×3=6となり[商の最小公倍数×最大公約数]であることが分かる

なぜ最大公倍数と最小公約数は求めないの?

  • 最大公倍数は無限である
    *ある数の倍数は無限に存在するため
    *あらかじめ範囲指定のある場合のみ用いる
  • 最小公約数は1である
    *ある数は必ず1で割り切れるため

公約数をすべて求める
1と最大公約数を含めたすべての公約数は、すだれ算で求めた公約数の掛け算の組み合わせで求まる

ある3つの数について調べる場合

この場合には2種類のすだれ算がある
①3つの数の公約数のみで2つの数と同様に最大公約数が求まる
②3つの数の公約数以外に2つの数の公約数が生じるため変則すだれ算をつかう
*変則すだれ算では公約数で割れない数について、そのまま下に降ろす

最大公約数
①すだれ算をつかって求める
②変則すだれ算をつかって求めた3つの数の公約数を掛け算して求める
*2つの数の公約数は除外する

最小公倍数
①すだれ算をつかって求める
②変則すだれ算をつかって求める
*ある1つの数に着目したとき他2つの数の公約数を除いた素数の掛け算となり、
公約数は素数の小さい順から探すので除外された公約数倍すれば最小公倍数が求まる

公約数をすべて求める
1と最大公約数を含めたすべての公約数は
①すだれ算で求めた3つの数の公約数の掛け算の組み合わせで求まる
②変則すだれ算で求めた3つの数の公約数の掛け算の組み合わせで求まる

場合の数

並べ方の問題

重複を許す並びが何通りあるか樹形図を書いて調べる

  • ABCという3枚のカードを並び替えると3×2=63×2=6となり6通りの並べ方がある
    *樹形図でAが一番左端にくる場合は[ABC,ACB]の2種類
    *最初の一つだけ書けば残りは掛け算で答えが出る

組み合わせ方の問題

重複を許さない組が何通りあるか
①樹形図を書いて調べる
②表を書いて◯の数を調べる
③図を書いて頂点を結ぶ線の数を調べる

  • 野球の対戦でABCDの4チームが出場するとき6通りの組み合わせがある
    *A対BもB対Aも同じ試合なので片方を除いて数える
  • ABCDEFGの計7人から6人を選ぶとき7通りの組み合わせがある
    *7人のうちいつも1人だけが選ばれない場合を考えるとすぐに答えが出る

集合算

  • [集合図,表,線の図]をつかって答えを求める
    *不明部分を含めて[集合図:6箇所,表:9箇所,線の図:5箇所]の数で構成される
    *線の図には2種類の構成がある

分数

概要

ある品物を等分にしたときに1人あたり何個受け取ることができるかを明示したもの
[品物,個数]が別のものに置き換わっても同様である

各部の名称

  • 真分数(しんぶんすう):分子が分母より少さい分数
    • 単位分数(たんいぶんすう):分子が1の分数
  • 仮分数(かぶんすう):分子が分母より大きい分数
  • 帯分数(たいぶんすう):整数と真分数の和から成る分数

通分

分母が異なる分数の足し算や引き算の時に、それぞれの分数の分母が最小公倍数となるように、分母と分子に同じ数を掛け算すること
*1人あたりの個数をさらに等分して分母を揃える意味合いである

約分

分母と分子を共通の数字(公約数)で割って、分母をなるべく小さくすること
*6個を8人で等分することは3個を4人で等分することと算数上は同じ意味である

見分け方

  • 各位の数を足して3の倍数なら、その数は3の倍数なので3で約分できる
    *例えば3桁の数は分解すると[(99+1)×+(9+1)×+=99×+9×+++(99+1)×○+(9+1)×△+□=99×○+9×△+○+△+□]このようになるから
  • 下二桁が4の倍数なら、その数は4の倍数なので4で約分できる
    *三桁目以降は[100倍,1000倍]と続き[4×254×25倍,4×2504×250倍]と4の倍数になるから

計算するときの注意点

分数全般

  • 約分については計算途中で可能なら必ず行う
  • 分数の掛け算は1人あたりの分配個数を複数人でさらに等分することを示す
  • 割り算は割る数を逆数にして掛け算する
    *2つの数の積が1のとき一方を他方の逆数という
    *例えば半分個を1人の半分で分けることはできないから両方とも2倍して1人あたりの個数にしている
    *割る数が整数のときは[分母がその整数]の逆数になる

仮分数

  • 必ず帯分数に直す

帯分数

  • 整数部分と真分数部分を足したものを括弧で囲ったものと解釈できる
  • 足し算や引き算では交換法則により整数部分を先に計算する
    *引き算で真分数部分が負の数になる場合には整数部分を繰り下げてから計算する
  • 掛け算や割り算では仮分数に直してから計算する
    *足し算や引き算のように交換法則は適用できず、分配元が複数あるので分配法則も適用できないため

小数

足し算と引き算

  • 小数点を揃えて筆算する
  • 小数点以下の桁が不足するときは0を補う
    *0.0も0.00もそれ以上に桁が多くても整数にすると0と同じ意味だから自在に補える

掛け算

  • 右詰めで計算して小数点以下の合計の桁で小数点を付け加える
    *分数にすれば110×110\frac {1} {10} × \frac {1} {10} のような形であり、その分母同士の掛け算の結果を反映していることに等しい

割り算

  • 割る数の小数点がなくなるまで、10倍、100倍、1000倍して割られる数にもこの掛け算をする
    *小数の掛け算と分数の割り算の仕組みから逆数を掛け算すれば小数点の位置を調整できる
    *計算間違い防止のために小数点の位置を調整する
  • 余りの小数点は位置を調整する前のものとする

割合

比べる量が元の量の何倍か

百分率

  • 比べる量が元の量の何%か
  • 割合に100を掛けて%表示としたもの

歩合

  • 割は10分の1(0.1)
  • 分は100分の1(0.01)
  • 厘は1000分の1(0.001)

  • 分数と同じ意味でありながら2つの事物の相互関係を表すことができる
  • 分数と同じなので公約数で約分できる
  • 方程式は[内項の積=外項の積]で求めることができる
    *比が同じということで、たとえば2:3=4:62:3=(2×2):(2×3)2:3=4:6は2:3=(2×2):(2×3)であり、内項の積も外項の積も2×2×32×2×3となるから
    *方程式とは未知数である変数を含む等式である
    ↑方程式を成り立たせる未知数の値を方程式の解と呼び、解を求めることを方程式を解くという
    ↑等式とは2つの対象の[等価性,相等関係]を表す等号を用いた数式のことである
    ↑文章問題から方程式を作るときには[=]を境に同じ単位の数を比較する
  • 2つの量について、片方が 2倍、3倍 ⋯ となると、もう片方が12\frac {1}{2}倍、13\frac {1}{3}倍 …となるとき、その2つの量は反比例すると言う
    *2つの量の積が一定である

線分図

  • ある個数を等分する様子を図にしたもの
    *例えば全体個数を5等分にした場合に1等分の個数を求めるなど

速度

キハジの表を覚える
https://towatowa.net/wp-content/uploads/2018/02/82d94ce4cccd463a3f972c3a73275b77.jpg

図形

図形の名称

  • 点:辺と辺がぶつかった点
  • 数直線:目盛付直線
  • 底面:角柱の上下面
  • 台形:1組の向かい合う辺が平行な四角形
  • 直方体:四角柱の別名称
  • 立方体:1辺の長さがすべて同じ四角柱

円について

  • 円周率を固定の数値として定義している

周長
①[内接正多角形周長<円周<外接正多角形周長]
②直径を1cmとしたとき円周が3.14cmである
*円周率の根本的な理解には三平方の定理と三角関数の知識が必要である

  • 円:直径×円周率
    *円の周長を円周と呼び、円周率とは上記の数値から逆算したもの
  • 扇形:直径×円周率×角度÷360°

面積

  • 円:半径×半径×円周率
    *円を空洞のないトイレットペーパーの芯に見立てたとき、ある部分に切り口を入れると二等辺三角形になるから
    ↑底辺×高さ÷2→[底辺は円周→円周は直径×円周率,高さは半径]なので直径×円周率×半径÷2となるから
  • 扇形:半径×半径×円周率×角度÷360°

体積

  • 円柱:底面積×高さ

角度

  • 三角形の内角の和は、それぞれの角を切り取って並べると直線になることから180°である
  • 四角形の内角の和は、それぞれの角を切り取って並べると敷き詰められるので360°である
    *円の一周が360°なのは古代バビロニアを起源としており、太陽暦の1年が365日、太陰暦の12ヶ月が355日、六十進法で約数が24個と多く分割計算がしやすいことから、間をとって360となった
    ↑十進法で円を100°とすると約数は9個、1000°だと16個になる

面積

  • 長方形:横×縦
  • 平行四辺形:横×高さ
    *高さで切り取った三角形を反対側にもってくると四角形になるから
    *並べて見切れてしまう場合でも両辺で区切れる回数だけ切り貼りを繰り返せば四角形になる
  • 台形:(上底+下底)×高さ÷2
    *ひっくり返して並べると平行四辺形になるから
  • 三角形:底辺×高さ÷2
    *ひっくり返して並べると平行四辺形になるから
  • ひし形:対角線×対角線÷2
    *対角線で区切られた三角形を対角線軸で反転移動させて合成すると長方形になるから

体積

  • 角柱:底面積×高さ

展開図

  • 立方体:T字型を横寝で上面と底面はどの位置でも展開図としては同じで6通りは確定する
    *さらに制限を設けたうえなら別途確定させられる
  • 頂点の把握:まず上面と底面の頂点位置を明確化して次に対応する面の頂点を順にたどる形で対応頂点を明確化する

合同

合同とは2つの図形の形と大きさが同じであることを言う

三角形の合同条件
①3辺の長さがそれそれ等しい
*辺の長さがそれぞれ等しいとき各頂点の位置は辺の長さによって決まるため、図形が上下左右反転しようが合同である
*なぜ三角形を最初に学ぶかと言えば、辺の組み合わせによって成立する図形として三角形が最小単位のものだから
②2辺とその間の角がそれぞれ等しい
*この条件によって3つ目の辺の長さと頂点が決まるから
③1辺とその両端の角がそれぞれ等しい
*この条件によって3つ目の頂点がきまるから

四角形の合同条件
対角線を引いて2つの三角形の合同条件を見るか下記条件を見る
①4辺と1角
②3辺と2角(3辺の間の角)
③2辺と3角

対象

  • 対象の軸を持つ図形を線対称と呼び、折り重ねて対応する点と線がある
    *対応する点を結ぶ線と対象の軸は垂直に交わり各点までの長さは等しい
  • 対象の中心を持つ図形を点対象と呼び、中心のまわりで180°回して対応する点と線がある
    *対応する点を結ぶ線を2つ引いたとき、線同士は対象の中心で交わり各線について各点までの長さは等しい
  • 正多角形は線対称で角度の数だけ対象の軸を持ち、角度の数が偶数のときは点対象でもある
  • 円は線対称で対象の軸は無数にあり、点対象で対象の中心は円の中心である

単位

  • 距離の単位は長さを2回掛け算するのでm2m^2のように単位の右上に2を付け足すことになっている
    *ある長方形が10m210m^2のとき縦の長さ1mで割ると横の長さ10mが求まる
    1m21m^2の正方形が10個あるとも捉えられ、全正方形の横の長さを合計したものを求めていることに等しい
    1m21m^2は一辺が1mの正方形で、cm換算にすると一辺が100cmだから10000cm210000cm^2になる
    *面積の単位にはa=100m2a=100m^2ha=10000m2ha=10000m^2もある
  • 体積の単位は長さを3回掛け算するのでm3m^3のように単位の右上に3を付け足すことになっている
    *ある直方体が10m310m^3のとき高さ1mで割ると底面積10m210m^2が求まる
    1m31m^3の立方体が10個あるとも捉えられ、全立方体の底面積を合計したものを求めていることに等しい

縮図と拡大図

ある図形同士が縮図と拡大図の関係性であり未知の辺の長さxが与えられているとき
各辺の長さの比から[内項の積=外項の積]を使って方程式を解くことでxを求められる

データ分布

代表値

  • [平均値,中央値,最頻値]の総称

度数分布

  • 最小最大範囲を持つ項目ごとにどれぐらいの割合で個数が配分されるのか表や棒グラフにすること
    *この範囲のことを「階級」と呼ぶ
    *特定の階級に含まれるデータの個数を「度数」と呼ぶ
    *棒グラフの場合には各階級に対応する個数を積み上げる
    *階級の中央値を最頻値と見立てる場合がある

脚注
  1. 計算過程では分数にする方が分かりやすい ↩︎

アルゴリズム×数学の学び直し

Discussion

ログインするとコメントできます