2021年09月07日 12時00分

第14弾プロジェクト「FizzBuzz(フィズバズ)問題」

ホームプログラミングコラム第14弾プロジェクト「FizzBuzz(フィズバズ)問題」

こんにちは!😊


スーパーブログ

「実際にプロジェクトを動かせる記事」の第14回目となります!

今回はFizzBuzz問題をSPACEBLOCK(スペースブロック)で解いてみようというプロジェクトになります。

皆さんがSPACEBLOCK(スペースブロック)でプログラミングされる際の参考になればと思います!😆



今回のプロジェクト


今回のプロジェクトは8×8LEDパネルを使用しています。

~FizzBuzz問題~

FizzBuzzゲームとは

1から順に数字を発言していく英語圏の言葉遊びのゲームです。

ただし3で割り切れた場合「Fizz」、5で割り切れた場合、「Buzz」、

3と5の両方で割り切れた場合「FizzBuzz」と数字の変わりに発言します。

左上から順にLEDを点灯

3で割り切れる時にLEDに点灯する

5で割り切れる時にLEDに点灯する

3と5の両方で割り切れる時にLED黄色に点灯する

それ以外の場合、LEDに点灯する

という流れで動作するプロジェクトとなります。

fizzbuzz.gif


プロジェクトの解説

変数をセット

今回はxとyの座標を保持する変数を使用します。

image.png

yにはあらかじめ1をセットしておきます。

xはループ中に足し合わせるので1ではなく0をセットします。

点灯するLEDの色を条件分岐で決める

image.png

3と5で割り切れる場合、3のみで割り切れる場合、5のみで割り切れる場合、

それ以外の4通りに分岐させます。

image.png

もし~なら、でなければというブロックの左の+ボタンを押すと分岐を増やすことができます。

image.png

LEDを順番に点灯させる

image.png

LEDの数だけ繰り返し、LEDを点灯させます。

8×8のLEDを使用するので64回繰り返します。

また1列全て点灯(8回点灯)した場合、下の列に移動するためyに数字を足し、xのカウントをリセットします。

皆さんもぜひSPACEBLOCK(スペースブロック)でプログラミングを楽しんでください!😊

公式ブログ
公式ブログ
officialtyping-level-10question-level-10
SPACEBLOCK(スペースブロック)公式ブログです。