ヘロンの公式

 ヘロンの公式というのがある。三角形の3辺の長さが分かっているときに、面積を求める公式。式は次の通り。

長さa, b, cの線分を辺とする三角形がある時、面積をSとして
  
が成立する。ただし、
  
とする。

 3辺の長さが分かっているということは三角形の形を決定するに十分な条件なので、この3つの数値を使うことでその三角形に関するパラメータは全て示すことが出来るというのは理解してもらえると思う。
 リンク先のWikipediaで証明が上がってるけど、いかんせん分かりづらい。説明不足のため、呆けっと読んでいるとcosCの展開で首を傾げることになる。2ステップくらい間に挟むと理解しやすいかと思う。
 それはそうと、別の方法でヘロンの公式を証明してみた。少しリサーチしてみたところ同じ証明をしている人もいなさそうだったので上げておく。札幌旭丘高校の中村文則さんのレポートで似たようなこと、というか少し広い視点で色々と纏めている。

 さて、今回の証明だが幾何学的な手続きを殆ど踏まず代数だけでヘロンの公式を導く。とは言ってもやってることは直交座標系でコンパスと定規をこねくり回すだけなので幾何学から離れると言ってしまうと嘘になる。
 とりあえず、三角関数の知識がなくても機械的に導くことができる。脳みそ使わずに解けるから楽だね、とか思ってたら、因数分解で手こずった。
 例によって図とかグラフはエクセルで描いた。

[証明]
 三角形ABCを考える。A,B,C各角の対辺およびその長さをa, b, cとする。
 点Cを原点とし、aをx軸に沿わせる。
 
 点Aは点C(0, 0)からb, B(a, 0)からc離れた点である。すなわち、Cを中心とした半径bの円と、Bを中心とした半径cの円の交点のうちy座標が正の値となるものである(下図)。
 

 従って次の2つの方程式の解がCの座標となる。

 

 ①の両辺からx2を引く。

 

②にy2を代入

 

 

yは正の値なので、

 

yの値は三角形の高さに相当し、底辺の長さはaなので、この三角形の面積Sは、

 

となる。

 

とおくと、

 

[証明終了]

 今回の証明の所要時間は20分ほど。大した計算ではないので5分くらいで終わってほしかったけど、制限時間があるわけでもないので問題ないかな。因数分解に手こずらなければ5分で行けたと思う。
 寧ろ、それ以外のところで遙かに多くの時間を取られた。まず、エクセルで遊んでいて1~2時間。OASYSで清書するのに1時間くらい。PDFファイルにするのに6~7時間。ブログに上げるのに30分っていったところ。
 通常なら印刷する要領でポチるだけのPDF化に酷く手間取った。通常、PDFにしてから数式とか切り貼りするもので。
 普段PrimoPDFを愛用しているのだけど、原因不明でマトモに出力されない。仕方がないので、色々と試した。PDF reDirectLivePDF PrinterdoPDFCutePDF WriterBullzip PDF PrinterDocuComPDFCreatorPrimoPDFを含めて8種類。どれもダメだった。
 PDF reDirect、doPDF、CutePDF Writer、Bullzip PDF Printer、PrimoPDFはどれもマスク処理に失敗しており、↓こんな風に表示された。
 
 それに加えて、PrimoPDFだけはフォントの表示がおかしかったり、画像が表示できていなかったりした。
 PDFCreatorは日本語非対応と謳われているとおり、日本語が一切表示されていなかった。数式もダメだったかも知れないけど、そこまで確認する元気もなく直ちにアンインストールした。
 LivePDF Printerはマトモに出力されないどころか、変換中にソフトが落ちる。
 唯一良かったのが、DocuCom。これだけは、ちゃんと表示されました。ただし、全面に金払えみたいな表示さえなければ。その上、指定のサイトに行くと、販売終了といわれる。どうせよと。このソフト、どこで手に入れたのか記憶にないのだけど、僕のハードディスクの中のPDFソフト群の中に見あたらない。いきなりPDF Edit2と関連して動いている節があるので、このソフトをインストールした際に入ったのかなぁと思うわけだけど、いきなりPDFって金払って買ったソフトなんですけどねぇ。ちゃんとパッケージも取ってありますよ。いきなりPDFのヘルプで調べるとトライアル版と書いてある。意味がわからん。
 ちなみにOASYSにはPDF保存っていう保存方法があるのですが、これを選択すると「PDF保存にはAdobe Acrobat DistillerまたはPDFWriterが必要です」というエラーが出て怒られる。上記で紹介した各種PDFWriterには見向きもせずにこういわれてしまうと色々やる気減退が加速します。ちなみにHTML保存しようとすると数式の画像化のところで発狂して討ち死にします。
 そんなわけで、どうやろうかなと悩むわけです。印刷プレビュー→プリントスクリーンくらいしかやりようがないかな、と。
 すると、イメージ保存という保存形式を発見しまして、コレで行くことにしました。
 GIF形式で出てくるのですが、解像度に限界があるので表示が汚いです。そこで、上記のマスク処理に失敗したPDFファイルの上にここで得た数式の画像を上から重ねて無理矢理表示することにした。これはいきなりPDF Edit2のメインの機能なのだが、いきなりPDF Edit2で編集すると頻繁に暴走して表示が崩れるので、一つ一つの作業をするたびに別名で保存を繰り返した。どうせ完成したら中間データは全部破棄するからファイルが増えること自体はどうでもいい。
 そんなわけで完成した。数式は上から画像を重ねているだけなので、下層の数式が時々存在感を示したりしている。

 PDF:http://www.mediafire.com/?bxuuzhipgxmzag4
 エクセル:http://www.mediafire.com/?c3nhazjoyku8poa
 OASYS(OA2):http://www.mediafire.com/?l013pj0uc56i1yk

 ファイルサイズだけど、本家OASYSが22KB、GIF形式で出力したのが2ページ合わせて73KB、マスク処理に失敗したPDFが145KB、処理後のPDFが177KBとなった。エクセルは86KB。
 エクセルファイルはa,b,cの値を弄ると画像が一緒に動くので面白かった。

20121118
 いきなりPDFを修復したのでDocuComで出力しなおしたので上げておく。PrimoPDFはダメなままだった。どうしたんだろ。
 PDF:http://www.mediafire.com/?ingodd843wdealx