お久しぶりです!!
ミニ化かわいい!!
クマムシ大好き!!
縦読みにあらず!!
0そうだね プレイ済み
自分でそういうアルゴリズムを実装するのは実力アップに繋がりますよ。
仕事とかだと車輪の再発明は嫌われるけど、勉強のためにはむしろ既存の命令や関数を自分なりに実装するのはいい練習問題になります。
4そうだね プレイ済み
最上位ビットは符号ビットじゃないです。もし符号ビットだったら &h80000000=-0 になる。
十進数表記というのは
321 = 3*10^2 + 2*10^1 + 1*10^0
と解釈される。各桁の数字は 10 のべき乗(これを重みと言ったりする)の係数として解釈されるわけ。
二進数表記の場合はも同じで
&f = &b1111 = 1*2^3 + 1*2^2 + 1*2^1 + 1*2^0
= 8 + 4 + 2 + 1 = 16
と解釈されます。
符号付 4bit 整数として解釈するときは、最上位の重みを (-(2^3)) とする。
&f = &b1111 = 1*(-(2^3)) + 1*2^2 + 1*2^1 + 1*2^0
= -8 + 4 + 2 + 1 = -1
符号付 32bit 整数として解釈する場合、最上位ビットの重みを (-(2^31)) とするんだドン。
5そうだね プレイ済み
0 を表すのに 0 だけにしちゃったからねえ
0 はそのまま、負側をずらして今の -1 を -0 ってことにしておけば、
正: &h00000000~&h7fffffff (0~2^31-1)
負: &hffffffff~&h80000000 (-0~-(2^31-1))
なので漏れなく絶対値が表現できたのだけれど。
(そんな整数は嫌だ)
3そうだね プレイ済み
あれ? 中学じゃ虚数単位習わないんだっけ??? 失礼しました。
実数の範囲では二乗して -1 になる数は存在しないけれど。
小学校で引き算習った時も
「2-3 は計算できない。引くことできない」
みたいに習ったよね。その後「負の数」を導入して、引き算可能になった。
同じように、二乗して -1 になる数を新たに導入すると、√(-2) などが計算できるようになる。
この「二乗して-1になる数」(二つあります)の片方を虚数単位と呼び i と書くことにします。
i^2 = -1
これが i の定義。
i は実数ではないので数直線上にはありません。
じゃあどこにあるの???
wikipedia の「虚数単位」の説明には i の位置も -i の位置も図示されてるから見てみてね!
5そうだね 未プレイ
ここまでで、例えば以下の問題が解けるはず。解いてみてね。
問題: 以下を求めよ
(-1)^2 = ?
(-1)^1 = ?
(-1)^0 = ?
(-1)^(-1) = ?
(-1)^(0/2) = ?
(-1)^(1/2) = ?
(-1)^(2/2) = ?
(-1)^(3/2) = ?
(-1)^(4/2) = ?
3そうだね 未プレイ
x^2 = 2 を解いて
x = √2 または x = -√2
ってことだね。x=2^(1/2) だったから
2^(1/2) = +-√2
となる。でも定義としては正の実数だけとって
2^(1/2) = √2
とします。
こんな感じで a^(m/n) つまり a^(有理数) を定義します。
さらに拡張して a^(実数) まで定義します。
ここまで高校1年の数学の範囲かな。
1そうだね 未プレイ
あ、指数法則って中学でやるんだね?? ズゴーー
指数法則 a^m * a^n = a^(m+n) ... (1)
ここで m や n は正の整数だけだったかもだけど、
負の整数の場合もなんとなく定義できたとこまでかいた。次
(1) で m = n とすると
2^m * 2^m = 2^(m+m) = 2^(2m)
となりますね。ここで思い切って m=1/2 とおくと
2^(1/2) * 2^(1/2) = 2^(2*(1/2)) = 2^1 = 2
つまり
2^(1/2) * 2^(1/2) = 2 ... (2)
となります。改めて 2^(1/2)=x とおくと (2) は
x*x = 2
となる。てことは、
2そうだね 未プレイ
あ、このボックス・ミュラー法で、三角関数使います。
それで思い出したので書いてみました。
別にこんなの必要ないと思うので覚えなくていいけど
「正規分布」「標準偏差」という言葉だけは覚えとくと、芸は身をタスク。
1そうだね プレイ済み
r#=normal_rnd(平均, 標準偏差)
という呼び出し方をします。
平均は平均値のこと、山の中央ね。
標準偏差は裾野の広がり具合を示します。
小さいと山は急峻になり、大きいとなだらかになります。
サンプルでは平均=200(画面中央) 標準偏差=100 としました。
標準偏差100の意味は
・乱数が中央から +-100 ドット以内に入る確率が 68%
・+-200ドット(つまり画面幅いっぱい)に入る確率が 95%
です。
1そうだね プレイ済み
正規分布って、図のようなベル型に分布するやつ。いろんな自然現象があの分布になります。
で、その正規分布に分布する乱数を生成する関数作りました。正規乱数 (normal random number) ジェネレータ。
ボックス・ミュラー法というアルゴリズムを使います。
1そうだね プレイ済み
タイマーってカップめんタイマー??
お湯を注いで絵を描いている間にカップめんができあがるというしかけ??
1そうだね プレイ済み
了解です。
ただ、そうやってハードル上げられると
今後そらいろさんにコメントしようと思ったときにためらう原因となりますね。
「これでコメント返されたら、また共感しなきゃならんのか・・・じゃやめとこう」
てな感じで。
1そうだね プレイ済み
てことは 2^(-1) もすぐわかる。
2^(-1) = 2^0 の半分 = 1/2
2^(-2) = 2^(-1) の半分 = 1/4
つまり 2^(-m) = 1/(2^m) となります(mは自然数)
これで全ての整数 n について 2^n が求まった。
ここまでで
2^a * 2^b = 2^(a+b)
てことがなんとなくわかります。
例
2^3 * 2^4 = 8 * 16 = 128 = 2^7
3そうだね 未プレイ
次に 2^0 を考えます。
数列クイズ: X に当てはまる数値は?
64 32 16 8 4 2 X
64 から半分半分になっていくので、2 の次は 1 になりますよね。
これが 2^0 と考えていい。
2^2=4
2^1=2
2^0=1
2^n は
・n が 1 増えると倍になる
・n が 1 減ると半分になる
ということになります。
3そうだね 未プレイ
中学生にもわかる指数関数
指数関数って、べき乗のことなんだけど、
まずは 2 のべき乗から考えましょう。
2のn乗のことを 2^n と書くことにします。(n=自然数)
2^n = 2*2*2*....*2 = 2をn回かけた値
になります。
例
2^1=2
2^2=2*2=4
2^3=2*2*2=8
2のべき乗は 2 4 8 16 32 64 ... と倍倍倍倍になっていく数列になります。
ここまではいいですよね。
3そうだね 未プレイ
そらいろさん
お見せできなくて残念です。
MMLのコメント見ましたよ~
1そうだね プレイ済み
こりんごBIGさん!?
不思議なこともあるものですね!
1そうだね プレイ済み
あ、これはなんか懐かしい感覚が・・・
てかずいぶんとお久しぶりですね。
またユウリさんの作品をプレイできてよかったです。
お忙しいとのことですが、のんびりマイペースでこれからもプチコンに関わって頂ければと思います。
楽しい作品をありがとうございます!!
0そうだね プレイ済み