2021-12-03
さばえSDGs推進センター x イルミネーションプログラミング。今年はHana道場インターン生が講師として開催!
(昨年の様子、SDGs x プログラミング!17色のイルミネーションで飾るさばえSDGs推進センター/めがね会館9F

出張Hana道場☆さばえSDGs推進センターでSDGsの17色にライトアップ。 | きらきら星のつぶやき☆鯖江モデルを全国へ
多くのこどもたちに楽しくプログラミングするきっかけを提供するためには、楽しく教えられる多くの大人が必要です。 全世代に向けたオープンなものづくりを学ぶ場、Hana道場では、どんどん講師が誕生しています。

SDGs、17のゴールに対応する17色は?ちゃんとありますオープンデータ。
code4sabae/SDGs_ja: SDGS(持続可能な開発目標)、17の目標(ゴール)と169のターゲットのCSVデータ(English/Japanese)
CSVファイルに記載している16進法6桁のカラーコードを活用ください。 日本語と英語によるタイトル、説明、169のターゲットもあります。

今回IchigoJam用に加えた、カタカナによるタイトル「title_jakana」をJavaScriptで取り出し、IchigJam BASIC用のプログラムにするJavaScriptのプログラムを、Webプログラミング道場で書いてみました。

<textarea id=res style="width:90vw;height:25em;"></textarea> <script type=module> import { CSV } from "https://js.sabae.cc/CSV.js"; const url = "https://code4sabae.github.io/SDGs_ja/SDG-goals.csv"; const data = CSV.toJSON(await CSV.fetch(url)); const hex2n = (hex) => Math.floor(parseInt(hex, 16) / 10); const col2grb = (c) => `${hex2n(c[3] + c[4])},${hex2n(c[1] + c[2])},${hex2n(c[5] + c[6])}`; //const title = "title"; const title = "title_jakana"; const show = (d, idx) => `${idx+1} LET[${idx * 4 + 4}],${col2grb(d.color)},"${d[title]}"`; res.value = data.map((d, idx) => show(d, idx)).join("\n"); </script> title_jakanaをtitleにすると英語表記に変えられます。

できた、プログラミングを使って、画面にゴールを表示しつつ、WS.LEDコマンドでそのゴールの色に合わせて光らせましょう。

1 LET[4],0,22,3,"ヒンコンヲナクソウ" 2 LET[8],16,21,0,"キガヲゼロ" 3 LET[12],15,2,5,"スベテノヒトニケンコウトフクシヲ" 4 LET[16],1,19,4,"シツノタカイキョウイクヲミンナニ" 5 LET[20],5,23,2,"ジェンダービョウドウヲジツゲンシヨウ" 6 LET[24],16,0,21,"アンゼンナミズトトイレヲセカイジュウニ" 7 LET[28],18,25,0,"エネルギーヲミンナニ ソシテクリーンニ" 8 LET[32],1,15,4,"ハタラキガイモケイザイセイチョウモ" 9 LET[36],10,23,0,"ノウギョウトギジュツカクシンノキバンヲツクロウ" 10 LET[40],0,22,12,"ヒトヤクニノフビョウドウヲナクソウ" 11 LET[44],16,24,1,"スミツヅケラレルマチヅクリヲ" 12 LET[48],14,21,0,"ツクルセキニン ツカウセキニン" 13 LET[52],12,6,5,"キコウヘンドウニグタイテキナタイサクヲ" 14 LET[56],11,0,18,"ウミノユタカサヲマモロウ" 15 LET[60],16,4,5,"リクノユタカサモマモロウ" 16 LET[64],7,0,13,"ヘイワトコウセイヲスベテノヒトニ" 17 LET[68],4,0,10,"パートナーシップデモクヒョウヲタッセイシヨウ" 19 VIDEO3 20 FOR I=0 TO 16 30 FOR J=0 TO 3:[J]=[I*4+4+J]:NEXT 40 CLS:LC 0,3:?"GOAL ";I+1 50 ?:?STR$([3]) 60 WS.LED 1,20 70 WAIT 180 80 NEXT 90 GOTO 20



ひとまず行番号60で20コ指定していますが、たくさんつなげてまとめて光らせるなど、いろいろ工夫してみましょう!


プログラミングに慣れてきたらオススメ、JavaScriptをブラウザを使わずに動かすランタイム環境「Deno」。 Webプログラミング環境で書くJavaScriptそのままがIchigoJamのように、コンピューターと対話するように使えます。


SDGs ゴールクイズcode4sabae/SDGs_jaを使ったクイズアプリをちょっと改良
169のターゲット、ゴールはどれでしょう?

links
- SDGs目標1「貧困をなくそう」を考える、じゃんけんゲームシミュレーター

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / RSS