ロング体験会 ご応募受付中です

Scratch 簡単なタイマーをつくる方法

Scratch(スクラッチ)実践編じっせんへんということで、簡単なタイマーをつくっていきます。
また、秒を分秒に変換する方法についても解説します。

以前記事にした、制限時間の作り方の考え方もご参考下さい。

完成形はこちらです。
何秒にセットするかを聞いて
150秒と入力されて
それを分秒に変換し
タイマーを動かします

タイマーの完成形~前半~
タイマー 前半

スタートして
残り5秒になると・・・

タイマーの完成形~後半~
タイマー後半
目次

秒を分秒に変換する

秒を分秒に変換する方法について、解説したのち、
タイマーをつくっていきます。

タイマーのつくり方だけを知りたい方は、スキップしてください。

手順1 変数「総秒数」「分」「秒」をつくる

変数を作るを押すと
新しい変数を作る画面が出てきますので
変数名「総秒数そうびょうすう」「分」「秒」を、すべてのスプライト用で作成します。

変数について、詳しくはこちらから

手順2 総秒数をセットする

総秒数をセットします。
今回は150秒で作成します。

手順3 秒を分秒に変換します。

秒を分秒に変換するには次のように考えます。

秒→分と秒に変換する考え方

分 総秒数を60で割って、端数を切り捨てた値
秒 総秒数を60で割った余り

「150秒」を「2分30秒」に変換したい場合
分 150 / 60 = 2.5 → 切り下げ → 2
秒 150 / 60 の余り 30
2分30秒が求まります

このように書きます。

タイマーのつくり方

上記を踏まえ、タイマーをつくっていきます。

手順1 旗がクリックされたら、タイマーをリセットして、希望の時間にセットする

「何秒にセットしますか」と聞いて待つというコマンドは、
こちらのブロックを使っています。

このブロックを使うと、画面上に入力ボックスがでてきて
そこに入力した値が(答え)ブロックに入ってくるという仕組みです。

手順2 スプライトがクリックされたら、タイマーがスタートする

このスプライトがクリックされたら、「スタート」と言って、タイマーがスタートします。

1秒経つごとに、総秒数を減らしていき、その度に、分秒に変換します。

おまけ ブロック定義でスマートに

秒を分秒に変えるコマンドは、今回のプログラムで2回登場します。

冗長(じょうちょう)なので、1か所にまとめたいですよね。

そんなときに使うのが、ブロック定義です。

ピンクの「ブロック定義」の中に、「ブロックを作る」というボタンがあります。

ブロック名「秒を分秒に変換する」と入力し、

左下引数を追加をクリックして、引数(秒)を追加します。

このように、定義というブロックが出来上がりますので、
この中に処理の中身を書いていきます。

これで共通処理の定義が完成です。

後は、先ほどのコマンドから呼び出します。

同じ処理を1か所にまとめるというのは、プログラミングの基本です。
1か所にまとめることで、間違いがあったときの修正しゅうせいや、仕様しようの変更が容易よういだからです。
2か所にあると、どちらかは修正して、どちらかは修正できていなかったというような、不具合ふぐあいにもつながります。

Scratchは、MITメディア・ラボのライフロング・キンダーガーテン・グループの協力により、Scratch財団が進めているプロジェクトです。https://scratch.mit.edu から自由に入手できます。

シェアおねがいします
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

もつさん
プログラミングスクールLの代表
妻、息子、娘の4人家族
プログラミング教育は、子どもの将来を変え、社会を変えるという信念のもと、日々子どもと向き合っています。

目次