スキップしてメイン コンテンツに移動

スクラッチでカニのハサミの動きを計算式で制御

スクラッチを使って水族館を作成しました。
動作自体は基本中の基本で魚は左右に移動します。
しかし、カニのハサミはそうもいかず、条件付けを行います。




条件付け、よくよく考えると数学的な考え方が必要です。

初めての方がカニのハサミをパッと計算式にするのは、なかなか難しいこともあるようです。

そもそも、何のときにハサミが開いて、何のときにハサミが閉じる。
そして、それってプログラムででどう書くの?

ということになります。

ここではタイマーを使い1秒おきにハサミの開閉をします。タイマーが奇数の時はハサミを閉じ、偶数のときはハサミを開く。
スクラッチのタイマーは秒より下の桁、コンマ何秒というところまで扱いますので、数値を整数に丸める必要があります。


そして、そのタイマーの丸めた時間の数値を2で割った余りが0なら偶数、そうでなければ奇数。
偶数は2で割れる数値、奇数は割り切れない数値ですからね。
つまりはあまりを計算して出します。
そして、状況に応じて画像を切り替えます。

時間を2で割った余りが0なら ハサミが開いている画像を表示 
時間を2で割った余りが1なら ハサミが閉じている画像を表示

条件文は
もし、○×が△□なら、Aを表示
もし、○×が▲■なら、Bを表示
という具合に条件を付けます。
この○×の部分には数学の方程式や不等式を利用します。

って、まったくの初心者が何も見ないでパパッと思いつきにくいですね^^;
ここまでできると、だいぶいろいろわかってくると思います。

ぜひ、条件やループを活用して、レベルの高いコードを書いてみてください。


コメント

このブログの人気の投稿

pythonでスカッシュからブロック崩しへ。プログラミング経験0。

先日のスカッシュゲームがブロック崩しになり、ようやく遊べるレベルに到達。 この生徒はプログラミング経験はゼロからのスタートで、 ツクガクで初めて挑戦しました。 確かにプログラムを書く上での、ボールやラケットの動き、当たり判定の仕組みとかの相談には乗ったけど、本当に教えてはないんです。 教えなくてできるんだから、プログラミングなんて簡単だ!ってことではないです。 ここまで来るのにこの生徒は毎日5~6時間ずつ、1か月ほど頑張りました。 「簡単にできるように教えて!」 と言われそうですが、授業は今日は変数、今日は条件、、ループ。。とカリキュラム通りに やっていって、 その場で理解しても、翌週になると分からなくなったり、 組み合わせると不安で他の生徒のを まるパクリしてなにも身につかずに終わる授業を経験しています。 しかし、この教えないで相談に乗り自分で考えてもらう方法では言語は関係ありませんし、 教壇に立って教えていた時よりもはるかに短期間に、 プログラミングができるようになる子が多いです。 実質、私のパイソン歴は0です。 上手にスマートに書くことより、ツクガクでは情熱が最も重要です。 仕事なら早くできようと、遅くできようと期限に間に合えばいいし、 この課題については期限もなくちょっとやってみようか?という乗りです。 こういうことの日々の繰り返しが、技術だけでなく精神面でも大きく成長することにつながります。 本人は気が付いていませんが、良い意味で入学時とは大分性格が変わったように思います。 まだ見ぬ新入生のみなさん、先輩はみんなこんなで、私もこんなです。 ド根性で喰らいついてきてくださいね(笑)

プログラミング言語を無理に覚えなくても。。

昔からそうなのですが、プログラミング言語を覚えようとする子が後を絶ちません。 否定はしませんが、 テキストで学習しながらわからなかったり、覚えられなかったりしても気にしなくてOK !!! 躓きはやっていくうちにクリアできます 。 自分が何か作りたいという 目標を持って、プログラミングをはじめたとき 、あやふやだったものは徐々に減っていきます。あるいはあやふやなまま進んで、より細かく知る必要が出てきたとき、 必死になって調べるので勝手に身につきます。 そんな機会は山ほど出てきます。 極論。。とうとう、身につかないまま大人になってしまった。でも、ほかの方法でそれはクリアできることに気が付いた。っていうならそれはそれでOKです。 小難しく一つの言語を覚えることより、必要に応じていろんな言語でいろいろためしてください。 ガンガン進んで振り返ったり、学びなおしながら先に進んでも無問題 。 前に学習した言語では理解できなかったが、こっちの言語で理解できて、前の言語でも使い方が分かったなんてことも十分あり得ます。 覚えられないからできないと悩む必要はありません。 気にせずガンガン行きましょう!! 繰り返し、やっていると案外できちゃいます。 と、元三流プログラマより。

コンピュータが人間のできないこと、苦手なことを補う。

誰でも苦手なことってありますね。 私も発達障害の生徒も、そうでない子も日々、成長過程で苦手なことと向かい合いクリアしていきます。 以下、コンピュータ好きのツクガク生にしか当てはまらないかもしれない、ツクガク流なわけですが、苦手なところはコンピュータを使って補っていきます。 コンピュータには5大装置というのがあります。 中学校の技術で習うのかな? 演算装置 ・・・演算だけあって計算するところ 制御装置 ・・・各装置に指示を送る司令塔 2つ合わせて 中央処理装置 (CentralProcessorUnit、CPU) 主記憶装置 ・・・CPUが処理するデータを一時記憶しておくところ 入力装置 ・・・キーボードやマイクのようにコンピュータに入力する装置 出力装置 ・・・ディスプレイやプリンタのように表示したり出力する装置 このほか、主記憶装置に対して、ハードディスクやUSBメモリのようにすぐに使わないデータを保存しておく 補助記憶装置 というのもあります。 授業でありがちなことですが、各装置を学習する上での人間の体に当てはめてみます。 演算装置・・・脳(計算したり、考えたりする) 主記憶装置・・・脳(覚える) 制御装置・・・脳(各部に指令を送る) 入力装置・・・目(読む) 出力装置・・・手(テストで書いたりする)、口(発言) ↑は私が適当に書いていますが、生徒と話すと、 口や鼻は入力装置にもなるし、手も体も出力装置になります。 体ではありませんが、 補助記憶装置はノートがぴったりですね。 補助記憶装置は手のひらと思った方は。。手に書いてテストでカンニングでもしたのかな。反則ですよ(笑) さて、これだけ人間と密接な関係のあるコンピュータ、利用しない手はありません。 さすがにあなたの思考を読み取って勝手に動いてはくれませんが、あなたがあなた自身を制御してパソコンさえ使えれば、こんなに楽になります。 演算装置(脳) 計算はもちろん、何かを考える時にはワープロソフトやプレゼンテーションソフトを活用することで、考えがまとめやすくなり解決できることもあります。 調べものも得意です。 入力装置(目) 読むのが苦手なら、読み上げソフトを使えば声に出...