第14弾プロジェクト「FizzBuzz(フィズバズ)問題」
![](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-09-06/wkN0Q9_4lAtqS-nUGncXu.jpg)
こんにちは!😊
スーパーブログ
「実際にプロジェクトを動かせる記事」の第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 fizzbuzz.gif](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-09-06/1POhJRvltxCfwSHol0TL9.gif)
プロジェクトの解説
①変数をセット
今回はxとyの座標を保持する変数を使用します。
![image.png image.png](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-09-06/Vvt4DmJoSJeAZkNKdm5ll.png)
yにはあらかじめ1をセットしておきます。
xはループ中に足し合わせるので1ではなく0をセットします。
②点灯するLEDの色を条件分岐で決める
![image.png image.png](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-09-06/0_jFaq8W5yTCNHugghApF.png)
3と5で割り切れる場合、3のみで割り切れる場合、5のみで割り切れる場合、
それ以外の4通りに分岐させます。
![image.png image.png](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-09-06/mSx0hZKUCtGfzpk7Co8cc.png)
もし~なら、でなければというブロックの左の+ボタンを押すと分岐を増やすことができます。
![image.png image.png](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-09-06/0KEHWBOY3WrJ4_LQ1JhAW.png)
③LEDを順番に点灯させる
![image.png image.png](https://s3.ap-northeast-1.amazonaws.com/spaceblock.jp-storage/blogs/2021-09-06/4VZF90e8mTI5_y7VtIr59.png)
LEDの数だけ繰り返し、LEDを点灯させます。
8×8のLEDを使用するので64回繰り返します。
また1列全て点灯(8回点灯)した場合、下の列に移動するためyに数字を足し、xのカウントをリセットします。
皆さんもぜひSPACEBLOCK(スペースブロック)でプログラミングを楽しんでください!😊