皆さんこんにちは。
里得木です。
今回は、Scratch(https://scratch.mit.edu/studios/1168062)で円周率を求めてみたいと思います。
円の面積が半径×半径×πで求めれることから、直径(一辺)が等しい円と正方形の面積比は4:πになるといえます。
どうやって面積比を求めるかというと、モンテカルロ法(シミュレーションや数値計算を乱数を用いて行う手法)を使います。
本日の計画
①拡張機能の追加
まず、Scratchのページで+新しいプロジェクトをクリックします。
すると、以下のような画面になります。
左下の拡張機能を追加をクリックします。
そして、ペンの拡張機能を追加します。
②正方形と円の描画
こちらが正方形を描くコードです。
無事、一辺が300の正方形が書けました。
次に、円を描くコードです。
ネットで調べたのを実行すると、、、
円(中身無し)が書けました。
困りましたね、、、
少しいじったコードがこちらです。
先ほど150で固定していた値を変数にすることで解決しました。(日本の国旗に見えたのは僕だけじゃないはず)
下準備が完了しました。
それでは円周率を求めていきましょう。
③実際に円周率を求め方
最初に考えた方法がこちらです。
必要最低限のブロックは入っています。
その後、正方形に当たった回数が試行回数を超える問題(赤と青の間で落ちたときに2倍になっていることが原因)を解決するために、黒いやつをめっちゃ小さくしました。
他にもいろいろあって、このコードで実行することにしました。
スペースキーをポチッ。
~約30分後~
今日より円周率は3.141018です(笑)
見ていただきありがたいです。
読者登録と星はもっとありがたいです。
Xも始めたので、フォローしてくれるとうれしいです。
今回の作品はhttps://scratch.mit.edu/projects/886574100/で遊べます。