かけ算(乗法)とは何か
■ このスレッドは過去ログ倉庫に格納されています
2を3回足す→何に?
0に2を3回足す→なぜ0に?
2つが3つ→2つは2つでしょ
1つあたり2つが3つ→なぜ1?「あたり」とは?
2の3倍→「倍」とは? キチガイが大量に湧いてくるシーズンはそろそろ終わり 複素数については
「iは二回掛けると−1となる元」
と天下り的に導入するしかない
これで回転が扱えるんならいい御利益 虚数とかの特殊な例だけじゃなくて、そもそも「掛ける」とはどういうことなのかを誰も気にしないのが不思議です 掛け算とはなんらかの群によって定義される演算のことですね >>6
あれが乗法の定義にみえますかね!?
性質でしょう 小学校レベルの「実際に実社会で使う範囲」でも、現実に対応する意味が複数あるからな。
小学校ではそこいらへんをぼかして教える。そうしないと拒否感出されるからな。
ある人はアレイ図(縦横に○が並んでいるイメージ)になって、全体の数を求めるのが掛け算だと言う人もいるが
比例の問題とかこれ使えないんだよなー >>8
それで小学校で習ったからそのくらい誰でも分かるだろ、となるのはおかしい話ですよねえ
最先端の数学者はかけ算をどう理解しているのか気になるところです 初等的な数論からいうと
かけ算の等式は、整数の内部構成を確認するためのもの。
18 = 9×2 = 2×3×3
など イコール、等号で結ばれた式は数の生成因子を見るもの 数週間前に日曜数学会で、足し算からかけ算になった過程(足し算とかけ算の間)の演算方法っぽいものがありました
自分の頭では理解できなかったですが、>1さんの参考になりそうなので一度覗いてみては如何でしょうか >>12
めっちゃ気になるんですけど、日曜数学会というものを初めて耳にしたので少し調べてみたのですが該当しそうなものは見つけられませんでした… >>13
ごめんなさい。自分でも探してみたけど見つけられませんでした
>1さんの内容はプログラミング的な発想なので、プログラム板で聞いてみては
プログラミングで足し算を使ったかけ算について説明
a*b=cとする
for( c=0; b>0; b=b-1 )
{ c=c+a; }
プログラミングは足し算しかできない(※)ので、如何にして足し算だけを使ってかけ算の値を求めるかが重要
プログラミングの意味は、
初期値cは0
bが0より大きければ、bから1を引き続ける
cにaを足す
です
つまり、初期値0のcにbが0より大きければbから1を引き続け、その回数分だけcにaを足し続ける 具体例
3*5=c
a=3;b=5;を入力
for( c=0; b>0; b=b-1 )
{ c=c+a; }
初期値0のcにb=5が0より大きければ、b=5から1を引き続け、その回数分だけcに3を足し続ける
b=5が0より大きいので、b=5から1を引き続ける(5-1=4,4-1=3,3-1=2,2-1=1,1-1=0)
5回目でb=5がb=0になり、bが0より大きくなくなったので終了
cに3を5回足す(0+3=3,3+3=6,6+3=9,9+3=12,12+3=15)
値(出力)は15になります
結果が出力され値が正しい(間違ってはいない)ので使用可能。これは、プログラミング的な考え方だと思います
数学的見方・考え方からすると、些か強引な手段と思えますが、これ以上うまく説明できないです >>3
プログラミングの『i++』のことでは
上記の『b=b-1』に該当し『b--』と書き換えられます
『i++』を使用する方法もありますが、質問の内容を含めプログラム板のほうがより詳しく聞けるかと思います >>17
cの初期値が0なのはなんでなんですかね〜
プログラミングはよく分からないんですけど、私の知ってる乗算器では2進法の筆算みたいな原理で答え求めてましたね。
なぜ 1×1 = 1, 1×0 = 0 なのかは謎ですが 抽象的な返答は可能という人はいるけれど、具体的な返答が可能という人はいないのか…… 例えば2×4
2 4
○
○
○
○
○
○
2×4=2と4の間に引ける線の本数=8
こういうこと? 割り算を
間に引ける本数÷片方の○の個数=もう片方の○の個数
こう定義すれば0÷ X=0になるって言えるし、
X ÷ 0とかすると
Xが0じゃない時点で矛盾するし
Xが0だとしても答えの候補が無限に出てくるから一つに定まらないことも言える。 >>22
初期値が0の理由
プログラミングでは、出力される値が間違っていないので使用可能。必ずしも数学的な根拠が前提にあるわけではないと自分は思います
例えば、素数の判定プログラムでは初期値は2ですし、他のプログラムを確認しても戻り値(return)が0や1やその他だったりと根拠よりも結果が重要視されているような感じがします
環論(数学)は、プログラミングを無理矢理数学で説明しているように思います。間違っているのではなく、何かが不足している印象を受けます
プログラミングから数学をみると、数学も何かが不足している、ズレているように感じることがあります
「現代数学の観点では、いかなるアプローチから定義を試みようとも必ず破綻に至る。」という言葉に賛同 初期値が0やそれ以外である場合の考え方の例題っぽいなにか
ある箱に1000円を入れて、取り出したら合計1000円になりました。箱の中にはいくら入っているでしょうか?
さらに、箱に1000円入れて、取り出した合計が2000円になるには、箱にいくら入っていればいいでしょうか? 追記:
つまり、箱に1000円入った状態で、その箱に1円+1円をいれると2円にならず、1002円になってしまいます。なので、箱を空にしなければなりません
しかし、箱を空にしていたとしても重量を求める場合、箱に1g+1gを入れて箱の重量分が足されてしまい2gになりません
そこで、箱がある状態で0gになるよう設定すれば、箱の重量を無視して1g+1g=2gにならます
プログラミングでは、初期値を設定しないと上記の例のようなことになり、正確な値が出力されません
これが、初期値を(空ではなく)0に設定する理由だと自分は考えます
数学では、暗黙の了解的な前提条件で、プログラミングでいう初期値0の状態で計算されているのではないでしょうか
なので、1+1=1002になることはなく、またx+1+1=1002のときのxの値を求めよ。このような問題があっても、x=1000以外の解は不正解になるのだと考えられます 環論もプログラミングも○を使った説明も、既存の「乗法」を再現させるための細工に過ぎないのでは?
頑張って再現させても、そもそも「乗法」とは何なのかは依然謎のままです >>32
どうやら、乗法だけが理解できなく質問しているのではなく、加法からして理解していないように見受けられます
>1さんの分かる範囲で構わないので、加法について説明をしてみてください。それを踏まえて乗法の説明、または>1さんに必要だと思われる説明をしたいと思います
他の方が説明してくれるかもしれませんが 直感的に書く。
とある2つの数量を「合わせたもの」を考えた場合にその数量がいくらかってのが「足し算」ね。
もちろん、加法性が担保されなきゃいけないとか条件が必要だけど、面倒だからカットw
この「合わせたもの」って定義は自然数だけでなく、小数、分数、負数、実数に応用できる便利な定義。
増えた数で定義すると、負数で破綻するからな。
じゃ、次は乗法の定義。2つの数量があるとする。この2つの数量が比例関係にあるとする。
つまり、中1の定義で「y=ax」と書けるってやつだ。
この時の a×x が掛け算の正体。aは小1からやる「1あたり」とか「1あたり量」とか言われるやつ。
つまり、x=1 のとき y=a だし、xが1増えるとyはaずつ増えていく。それが1あたり量。
小1では比例関係は難しいので省略して暗黙の了解になっているが、背後にこの比例関係は必ずある。
りんご1個が120円なら1あたり量は120円で、りんごの個数が1個増えるとりんご全体の値段は120円ずつ増える。
1Lで5/8u塗れるペンキがあるなら、そのペンキ4/3Lで塗れる面積は 5/8×4/3 になる。y=axに他ならない。
当然1あたり量は a = 5/8uだ。 つまり小2でやる「1あたり×いくつぶん=ぜんぶ」というのは、y=ax に他ならないという話。
問題設定を読んでも比例関係がなかったら当然これは使えない。しかし、世の中には比例関係にあるものが本当に多い。 >>36さん、ノート拝見しました。ありがとうございます
>>34>>35
数学の教科書通りの加法乗法の説明ですね。>>1さんの疑問に答えるには、数学の教科書は向いてないと気付けました
やはり板違いだと思いますので、このまま数学板で回答を求めるなら、数学の回答を期待せず、そして求めないようお願いします
>>1は、コンピュータ(計算機)、算術演算、四則演算、プログラミング、環論関連の質問内容だと思います。そしてコンピュータ(計算機)関連の回答になりそうです
そもそも、乗法だけではなく四則演算全てで、
『◯に△を□回足す』
このような演算が実行されています(※減法では反数、除法では逆数を使用)
『コンピュータ(計算機)は、足し算しかできない』って聞いたことはないですか? >>38
そなのw >>1 がコンピュータのコト言っているなんてわからんよw
コンピュータは足し算が基本だけど、2倍と1/2 はできるんだ。それがビットシフト。
2進数では桁のズレがすなわち2倍、1/2倍になるからな。
掛け算と足し算の性質に分配法則なるものがある。普通の数学はこの分配法則をもとにして(定義とみなす)
掛け算を構成する。
これと、ビットシフトで掛け算を作るんだ。 >>41
なんでコンピュータの事がわからないのに、コンピュータ分野で答えてくれなんて言うんだw
ビットシフトってのは、コンピュータは2進法で計算することは知っているよな。
1101(2)=13(10) という数値を左に1ビットシフトすると、 11010(2)=26(10) となって、数値的に2倍になっているという話。
右シフトはこの逆で1/2な。
コンピュータはこの機能は最初から持っていて、これと分配法則を利用して掛け算を実現するんだ。 確かになんで答えられても分かんないようなとこで質問したんですかね、アホなのかな…
でもプログラム板の人は親切だったので専門用語とか全然使わずに説明してくれたのでラッキーです
乗算器の仕組みは少しかじったので分かりますが、結局は二進法の筆算を再現しているに過ぎません。頑張って再現しても、かけ算とは何かは一向に分からないんです >>44
掛け算とは直感的には同じ数が何個かあるものの数量を求める計算
小学校卒業レベルでは比例している数量を求める計算
双方とも性質を観測すると分配法則が成立している
大学ではこれを逆手に取って分配法則が成立する計算が掛け算だとやるんだよ
計算機での実装はビットシフトを利用したもので上に書いた通り 乗法とは何か?
射(圏論)、射の合成
>>1の内容は、環論(数学)
乗法とは足し算を使った演算方法 >>45
まず「数が何個かある」という状況がいまいち分からないんです。
数の数の数量ってなんなのでしょうか…
>>46
分配法則をかけ算の定義に持ってこようと試みたこともあるのですが、a×0 = 0 は求まったのですがどうしても a×1 = a は求められなかったので諦めました
>>47
足し算をどのように使った演算方法なのでしょうか?
現在、数列・総和との関係を考えていますが、乗法における因数みたいな数の呼称って加法にもあるんですかね?
交換法則と結合法則だけでどんな並びでも和が等しくなるという証明もしたいところです >>48
>まず「数が何個かある」という状況がいまいち分からないんです。
てきとーに書いているからなw
ある数量のまとまりが何個かあって、その全体の数量を求める計算とでも書けばよいのか?
下のような感じ
○○○○ ○○○○ ○○○○
4 4 4
4のまとまりが3個あるから全体の数量が「4×3」ね。
> 分配法則をかけ算の定義に持ってこようと試みたこともあるのですが、a×0 = 0 は求まったのですがどうしても a×1 = a は求められなかったので諦めました
それは分配法則の他に必須な公理だな。 >>46
分配法則は次のような公理で導入されている。
> (x+1)×y=x×y+y
この公理を認めれば分配法則が示せるし、逆に分配法則を認めるならこの式は成立する。
要するに必要樹文条件ってやつ。
公理になっているってことは他の定義なり公理なりからはこれを証明できないってことだな。 ■ このスレッドは過去ログ倉庫に格納されています