忍者ブログ
20080511~ 13と7と11の倍数の論理積は13と7と11の積の倍数である。 和ァ・・・
[2190] [2189] [2188] [2187] [2186] [2185] [2184] [2182] [2181] [2180] [2179]
テレビのアス比は3:4でした。
じゃあ20インチのテレビの横幅はいくつかといいますと16インチちょっきりでした。
これは、20インチが対角線の長さで、縦:横:高さの比が3:4:5という整数比になっているからです。

長方形を対角線でぶった切ると直角三角形が2つ出来ます。
この直角三角形の3辺の比は、一般には無理数です。
ピタゴラスの定理に2乗が含まれているからです。
底辺^2+高さ^2=斜辺^2でしたね。

ですが、時々整数の比、つまり有理数(分数)になります。

これがピタゴラス数です。


また、アス比3:4のテレビは20インチだったり16インチだったり22インチだったりいくらでも選べます。
アス比3:4のテレビを唯1つ無2の規格にしたい!
という願望があったとして、3インチ:4インチ:5インチなどという、最大公約数が1の整数にしたものを原始ピタゴラス数といいます。
また、「最大公約数が1」というのを「互いに素である」といいます。



原始ピタゴラス数はそう簡単に姿を現してはくれません。
たとえば底辺と高さに100までの整数をランダムにぶち込んだとして(round(100*rand(),0))
1000回試したところで整数比になれるのがせいぜい30個程度ですし(ピタゴラス数:mod(斜辺,1)=0になる条件)
ほとんどは相似な四角形なので除外され(原始ではないわけです)
今回はカブりませんでしたが合同な四角形(というか直角三角形)を除外するとたった2つ程度しか残りません。

今回の試行では
5:12:13
45:28:53
の2つでした。



実は、原始ピタゴラス数の斜辺と高さの間には
どちらかが奇数だともう片方は必ず偶数
という性質があるのですが、それを見つけるまでの準備が手間になってしまっては仕方がありません。


そこで登場するのがピタゴラジュースメーカーという原始ピタゴラス数を効率的に搾り取る装置です。
と、「数学ガール」に描かれていました。

=======
底辺・高さ・斜辺の種になるmとnという自然数を考えると

底辺=m^2-n^2
高さ=2mn
斜辺=m^2+n^2


で、原始ピタゴラス数が求まってしまうのです。
=======


ただし、
mとnはなんでもいいわけではなく
・m>n
・m⊥n(mとnは互いに素、最大公約数GCD(m,n)=1)
・mとnどちらかが偶数でもう片方は奇数(XOR(ぐうm、ぐうn)=false)

※ちなみに偶数かどうか「ぐうm=mod(m,2)」で定義します


では実際に、エクセルでピタゴラ・ジュース・メーカーを作ってみましょう。

まず、mとnを格納する2列を用意します。
小さいnのほうを左側にしておきます。
項目を準備

次に、nに値を入れてみましょう。
具体的に数値を格納

ここで、あまり多すぎても切りがないのでmとnを10までに絞ることにしますと
n=1なら、mは2~10までの偶数になります。

ではn=2にしてみましょう。
mはnより大きい奇数なので、3~10の奇数になります。
mに数値を格納
そしたらn=3にしてみます。
mは4~10の偶数になります。
m=6は最大公約数が1ではないので除外するのですが、この除外処理はあとでフィルタで行うことにします。
mを増やしながらnも増やしていく

このように作業を続けていくと、1つのnにつきmは基本的に1つ飛びで数えていけばいいことがわかります。
1つ上+2です。
また、1つのnにつき最初のmはn+1であることもわかります。


それでは、互いに素でないmとnの組み合わせを除外しましょう。
最大公約数を求める「GCD関数」が、数学・三角のジャンルに入っていなければ、「分析ツール」のアドインを登録する必要があります。

mの右側に「互いに素」判定の列を設けて、gcd(m,n)を取りましょう。
あとでフィルタリングで除外します。
「互いに素」フィルタリングの準備


ここまでくれば、あとは
・底辺=m^2-n^2
・高さ=2mn
・斜辺=m^2+n^2
を計算すれば、ピタゴラス数の出来上がりです。
ピタゴラス数の出来上がり!

いちおう、ピタゴラスの定理どおりになっているかどうか判定しましょうか

斜辺^2-底辺^2-高さ^2の列を設定すればいいので

このように全部ゼロになることがわかると思います。
ピタゴラスの定理に遵守しているか確認

3辺全部整数なのはおkですよね?
整数判定は、1で割ったあまりが0になればいいので、条件はmod(●,1)=0です。

3辺が互いに素かどうかの判定もしておきましょう。
GCD(底辺、高さ、斜辺)を計算すればいいのですが
ちょうどmとnの「互いに素判定」で2以上の数が出たところだけが、3辺の「互いに素判定」でも2以上が出ていることがわかると思います。
「互いに素」フラグ

ここまでが、ピタゴラス数の一覧です。
黄色い部分のうち
27:36:45と75:100:125は3:4:5
45:108:117は5:12:13と相似なので、原始ピタゴラス数ではないわけです。

原始ピタゴラス数は、GCD(m,n)でもGCD(底辺、高さ、斜辺)でもどちらでもいいのですが、
とにかく互いに素判定が1のものだけフィルタリングしてやればおkです。
条件付書式ダイアログ
黄色の目印は手動でも構いませんが、条件付書式でつけると効率的です。
列選択をして、「書式」→「条件付書式」でダイアログを出します。
「セルの値が」「1に」「等しくなければ」「背景を黄色くする」とすれば、とりあえず印はつきます
(数値以外が黄色くなるのを防ぐには列参照ではなく複数セル参照のほうがいいですね^^;)
目印



オートフィルタで構わないのですがフィルタリングしましょう。
一番上の項目行に最低2種類の書式設定をしてやれば、自動的に表だと認識してくれますので
あとは「データ」→「フィルタ」→「オートフィルタ」のチェックをオンでオートフィルタモードになります。
項目すべてが自由にフィルタできてしまいますが、今回は2つのうちどちらか1つの「互いに素」の▼ボタンを押して
「1」だけを選別すればおkです。黄色くつけた目印が消えたかと思います。
嘔吐フィルタ



定義や表を見てわかるとおり、この装置で搾り出したピタゴラス数は、底辺が奇数、高さが偶数に偏る性質がありますが、入れ替え可能なので問題ありません。

最初のほうで書いた、底辺と高さどちらか一方だけが偶数になるという性質をいちおう検算してみます。
底辺が偶数であるというフラグ「ぐう底辺」はmod(底辺,2)で計算できます。
2で割ったあまりなので0か1しか出てきませんから、そのままbooleanとして扱ってしまいましょう。
XORという関数がないのでa=ぐう底辺、b=ぐう高さとして
XOR(a,b)=OR(and(Not(a),b),and(Not(b),a))
で作ってやりますと
全部trueになることがわかるかと思います。
底辺と高さの偶奇



この性能を発揮させるために、50までの整数をランダムに、底辺と高さで2500ペア試して
よりすぐり5個の底辺・高さの偶奇判定

XOR(a,b)=OR(and(Not(a),b),and(Not(b),a))
排他的論理和XORの作り方(加法標準形)


を行ってみました。^^
ランダムで出したピタゴラス数で偶奇の判定


無限の濃度
ピタゴラ・ジュース・メーカーの定義を見ると、mもnもどこまでも大きくしていけるので
原始ピタゴラス数だけでも無限に作れることがわかると思いますが
これはあくまで整数比なので、この隙間を縫って実数のアスペクト比が存在することがわかります。
つまり実数の無限は整数の無限より濃度が濃いのです。(合ってるよね?)



つづく
ブログランキング・にほんブログ村へ
にほんブログ村

拍手[0回]

PR

コメント


コメントフォーム
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード
  Vodafone絵文字 i-mode絵文字 Ezweb絵文字


忍者ブログ [PR]
カレンダー
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
ブログランキング
ブログランキング参戦中
にほんブログ村 アニメブログ 深夜アニメへ
にほんブログ村 漫画ブログ SF・ファンタジー漫画へ
にほんブログ村 科学ブログ 自然科学へ
よかったらポチッとお願いします^^
最新CM
[12/30 buy steroids credit card]
[09/26 Rositawok]
[03/24 hydraTep]
[03/18 Thomaniveigo]
[03/17 Robertaverm]
最新TB
プロフィール
HN:
量子きのこ
年齢:
43
性別:
男性
誕生日:
1981/04/04
職業:
WinDOS.N臣T
趣味:
妄想・計算・測定・アニメ
自己紹介:
日記タイトルの頭についてるアルファベットは日記の番号です
26進数を右から読みます
例:H→7番目、XP→15(P)×26+23(X)=413番目。
A=0とする仕様につき一番右の桁はAにできませんのでご了承くださいズコー
バーコード
ブログ内検索
アクセス解析