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

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

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




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

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

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

ということになります。

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


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

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

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

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

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


コメント

このブログの人気の投稿

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

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

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

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

pythonでスカッシュ

 高校1年生。Pythonのテキストを使った練習も一通り終わって、いよいよ自作開始。   ツクガク では毎度、言語の練習ではスカッシュの課題をだすので(笑)、 スカッシュを作ってもらいました。 ありとあらゆるところで勉強中なので大分苦戦しています。  まだ作っている最中でバグはあるのですが、 直すためにはどんな動きをしているか、 どうやって値を見て直していくかなど 自分で想像しなければなりません。 根気のいる作業です。 でも、できるとさらに楽しくなり想像力が働くようで、 早速どうやって改造しようか、アイディアが出ていました。 アイディアとか想像力と言っても、 それを具現化するための努力は、 自分で自分によりレベルの高い課題を出すのと変わりありません。 その過程で、自分で自分を高めることにつながります。 アイディアや想像が自分の力でが具現化されるのは楽しい と感じ始めるとガンガン成長していきます。  一個一個、躓いて時間をかけ地道に課題をクリアしていくことは、 決してスマートにかっこよくとはいかず、 あきらめずに時間をかけてできるまでやり続けることが大切です。 そんな泥臭い雰囲気ががツクガク生にはあります😊 ツクガクってそんなところです😽