TOMONOプログラミング初心者の子供に何を教えたらいいの?とお悩みの保護者のためのScratch(スクラッチ)の入門講座。Scratchで猫の動かし方はわかったけど・・・次にどんなことをしたらいいの?という疑問にお答えするシリーズです。今回は時間を取り扱うプログラムを作ってみたいとおもいます。ゲームの制限時間を作ろうゲームの中には「制限時間内にクリアする」「制限時間内での得点を競う」など制限時間を使用するものは大変多いです。ゲームで使える制限時間プログラムを2種類の方法で作ってみたいと思います。「1秒待つ」で作るこれはとても簡単で、「残り時間」という変数を作ったあと、1秒ごとに数を減らしていく方法です。実際に作ったプログラムがこちら。このプログラムでは最初に「残り時間」=60にしているので、約1分のタイマーとなります。「タイマー」で作るScratchには最初から「タイマー」機能があります。このタイマーはScratchを起動した瞬間から勝手に動き出すタイマーです。ためしに、タイマーにチェックを入れて、タイマーの動きを確認してみましょう。スクリプトタブの「調べる」のところをクリックし、タイマーの横のチェックボックスにチェックを入れると、タイマーの値が表示されます。タイマーの中に値が入っていて、数字が勝手に動いていますね。この数字は、Scratchにログインしてからの時間(秒数)が表示されているのです。「タイマーをリセット」ブロックを使った時、もしくは、緑の旗を押した時にタイマーの値が0に戻ります。これらのタイマーの性質を使って、制限時間プログラムを作ります。旗を押したタイミングでタイマーが0になるので、制限時間からタイマーの値を引くだけです。「残り時間」という変数を使ってプログラムを作ってみます。このプログラムを実行すると・・・このような結果になります。残り時間は表示されていますが、小数点以下三位まで表示されていて少し見づらいので小数点以下は切り捨てたいと思います。▼切り下げブロックで、タイマーの値を整数値に修正このプログラムを実行してみます。すると、残り時間の表示が整数になり、さっきより見やすくなったと思います。西暦と和暦の変換をしよう2018年は平成30年。まもなく平成が終わり新しい元号になります。先日テレビを見ていたら「マイクロソフトが、新元号に対応させるためのアップデートを行った」というニュースをやっていました。そんな、今ちょっとだけホットな話題の元号に関連して、西暦と和暦の変換プログラムを作ってみたいと思います。明治以降の和暦(元号)と西暦の関係は以下のようになっています。今年は平成何年?手始めに、今年が平成何年かを教えてくれるプログラムを作ってみたいと思います。1989年が平成元年なので、現在の年から1988を引けばいいですね。「平成」という変数を作り、「現在の年ー1988」という計算結果が変数の中に代入されるようにしました。そのあとで、平成何年かをスプライトに言わせるプログラムを追加しています。(記事執筆は2018年です。他の元号も取り扱おう今度は他の元号(明治、大正、昭和)も取り扱いたいと思います。そこで、先ほどの変数「平成」の変数名を変更しておきましょう。変数はわかりやすい名前の方が良いからです。データのところにある「平成」という変数ブロックを右クリックすると、「変数名を変更」というメニューが表示されます。「変数名を変更」を選択してください。新しい名前の入力欄が表示されますので、変数名を「和暦」に直しておきましょう。西暦を入力してもらいその答えが明治より前なら「明治より前です」とスプライトが言うようにします。ごとに言うセリフが変わるようにしましょう。こちらのプログラムのような条件式にすると、元号の切り替わりの年、例えば「1989」を入力すると「昭和64年」と「平成1年」の両方をスプライトが答えてくれます。1年の時は元年となるようにプログラムをさらに作ってみましょう。こんなプログラムを途中にはさめばOK。今回は、この元年に変換変換する処理を定義ブロックとして作りました。あとは、この「元年」ブロックを間に入れていくだけです。このプログラムを実行すると、下の図のように平成元年と言うようになりました。日付関連で知っておくと自慢できる公式も合わせてご紹介いたします。Scratchでも作れるようですが、ちょっとマニアックすぎるのでここではご紹介だけに留めておきたいと思います。西暦Y年M月D日が、西暦1年1月1日から何日目かを求める公式です。式の詳細は以下のリンク先をご覧ください。閏年の判定方法とフェアフィールドの公式Scratchにはこれに似たブロックが存在します。ツェラーの公式こちらは曜日に関する公式です。西暦Y年M月D日が、何曜日なのかかを求める公式です。フェアフィールドの公式を変形させて得られるそうです。▼Wikipediaツェラーの公式-Wikipedia▼Scratchで作った人がいますhttps://scratch.mit.edu/projects/134269802/Scratchのこのブロックも、裏側ではこの公式で計算をしています。まとめ今回は、時間を取り扱うプログラムを作ってみました。Scratchにはタイマーや現在の時間を取り扱う機能などが用意されています。これらの使ってみると意外と簡単にプログラムが作れます。日付や曜日というのは子供達にとって身近なものなので、文字だけでも意外と楽しいプログラムが作れるのではないでしょうか。今回ご紹介した西暦→和暦変換の逆で、和暦→西暦変換プログラムなんてものも作れますね。Scratchの便利なブロックも裏側では、複雑な計算が行われているということも、トリビア的に知っておくと面白いと思います。今回紹介した内容を応用してアプリなども作ってみたいと思います。TOMONO教育ヲタクの1児の母。小学生の頃から教育書を読んでいた教育ヲタク。大学では、電池の素材の性質について実験とコンピューターシミュレーションを比較する研究を行っていたことがきっかけでSEになる。出産&育休後、子ども向けプログラミング教室講師、子どもたちの考える力を育てるオンライン塾の講師。TOMONO一緒に読まれている記事。Minecraftでプログラミング教育したい人のためのレッドストーン回路クイズ(17)コンパレーターその22019年8月9日971こんにちは。今日もMinecraftのコ...夏に応募したい!2019年子どもプログラミングコンテスト3選2019年7月29日1.14K夏休みが始まりましたね。子どもの頃は楽し...5歳児もハマるプログラミングアプリ-Springin’はじめて講座(4)絵の削除・インポート2019年7月26日865今日もSpringin’の続きです。新小学1年生の入学準備!知って安心、保幼少接続カリキュラム2020年1月14日2020年は教育はどうなるのか?ーやる気が出ない日に未来を心配してみる2019年12月27日プログラミングアプリSpringin’でマリオ風アクションゲームを作ろう(2)キャラクターの操作2019年12月13日プログラミングアプリSpringin’でマリオ風アクションゲームを作ろう(1)ステージの作成2019年12月6日あなたへのおすすめ。暗算が早い子の頭の中、暗算が遅い子の頭の中ー算数ができる子が持っている「量的感覚」のこと2018年11月16日プログラミング初心者のためのScratch(スクラッチ)入門-基礎の基礎編(1)2018年7月31日2020年教育改革-AI時代の教育指標「ブルームタキソノミー」の話2018年12月5日ゲームで頭のいい子を育てるー幼児xマインクラフトの3つの教育的効果2018年11月14日このサイトについて。今、注目されている考えさせる教育、アクティブラーニング。AI時代に教えるべき教育とは何か。2020年に教育必修化するプログラミング教育を交えながら、これからの教育シーンに必要な情報をお届けします。CATMADE,Inc.サイトマップ。