先生をプログラミングして
お菓子をゲットしよう
2017.11.26 @ななめな学校2
寺田直和
じこしょうかい
てらだ なおかず
(職業:プログラマー)
しょくぎょう

プログラム
機械への命令
=
きかい
めいれい

プログラムをみてみよう
- プログラムの「正解」は一つじゃない
あるのは「目的」だけ - ロボットはかしこくない
- たくさん考えること
- プログラミングっぽい考え方
だいじなこと
やってみよう!
プログラミングゲーム
- ステージの横のわくにカードを使って
みんなでプログラミング - できたプログラムをよみあげて、先生をうごかす
(先生はプログラムどおりにうごきます) - ステージ上のアイテムをぜんぶとれたらクリア
- チャレンジステージでゲットしたお菓子は後で本物のお菓子と交換できます
ゲームのながれ
-
すすむ
-
たべる
カード
お菓子

アイテム
例題

スタート位置

- プログラムはカードを使ってつくります
- カードには色んな種類があります
- 先生は、上から順にひとつずつカードにかかれた
動きをします
プログラムのつくりかた
すすむ
すすむ
すすむ
食べるプログラム
例題:きほん
すすむ
すすむ
食べるすすむ
すすむ
すすむ
すすむ
すすむ
食べる
できるだけ少ないカードで
クリアしよう
ジュース
アイテム
お菓子


カード
-
すすむ
-
たべる
-
右向け右
-
のむ
例題(ジュースをのむ)

すすむ
すすむ
たべる
右むけ右
すすむ
すすむ
のむプログラム
例題(ジュースをのむ)

カード
-
すすむ
-
右向け右
-
たべる
-
のむ
練習問題1


すすむ
すすむ
右むけ右
すすむ
すすむ
たべる
右むけ右
すすむ
右むけ右
すすむ
のむプログラム
練習問題1(こたえ)

くりかえし
テクニック1
カード
-
すすむ
-
右むけ右
-
たべる
-
のむ
-
くりかえし

例題(くりかえし)
すすむ
たべる
すすむ
たべる
すすむ
たべる
すすむ
たべるプログラム
(4)回、くりかえし{
すすむ
たべる
}例題(くりかえし)

カード
-
すすむ
-
右むけ右
-
たべる
-
のむ
-
くりかえし
練習問題2


(4)回、くりかえし{
すすむ
たべる
すすむ
のむ
すすむ
すすむ
右むけ右
}プログラム
練習問題2

カスタムカードで
命令をつくる
テクニック2
カード
-
すすむ
-
右むけ右
-
たべる
-
のむ
-
くりかえし
例題(カスタムカード)

-
カスタム
右むけ右
右むけ右
右むけ右
すすむ
食べるプログラム
例題(カスタムカードをつくる)

左向け左 {
}カスタムカード
左むけ左 {
右むけ右
右むけ右
右むけ右
}左むけ左 {
右むけ右
右むけ右
右むけ右
}左向け左
すすむ
たべるプログラム
カスタムカード
左むけ左 {
右むけ右
右むけ右
右むけ右
}左向け左
すすむ
食べるプログラム
カスタムカード
例題(カスタムカードをつくる)

チャレンジステージ1
カード
-
すすむ
-
右むけ右
-
たべる
-
のむ
-
くりかえし
-
カスタム

左向け左{
右むけ右
右むけ右
右むけ右
}すすむ
左向け左
すすむ
すすむ
左向け左
すすむ
のむ
すすむ
すすむ
左向け左
すすむ
たべる
すすむ
のむ
すすむ
すすむ
左向け左
すすむ
すすむ
たべるプログラム
カスタムカード
チャレンジステージ1

じょうけんぶんき
テクニック4
じょうけん + ぶんき
「もし◯◯なら…」
わかれ道

- もしテストで100点とったら…
- もし宿題が早くおわったら…
- もしおこづかいがふえたら…
- もし雨がふったら…
カード

-
すすむ
-
右むけ右
-
たべる
-
のむ
-
くりかえし
-
カスタム
-
もし…なら…
例題(じょうけんぶんき)
もし( )なら {
// ①
}「じょうけんぶんき」のつかいかた
おかしがある
おかしがない
ジュースがある
ジュースがない使えるじょうけん
もし( )なら {
// ①
}
それ以外なら {
// ②
}もし( )なら {
// ①
}
それ以外でもし( )なら {
// ③
}
それ以外なら {
// ②
}もし( )なら {
// ①
}
それ以外でもし( )なら {
// ③
}
それ以外でもし( )なら {
// ④
}
それ以外なら {
// ②
}①
③
④
②

例題(じょうけんぶんき)
カード
-
すすむ
-
右むけ右
-
たべる
-
のむ
-
くりかえし
-
カスタム
-
もし…なら
じょうけん
-
おかしがある
-
おかしがない
-
ジュースがある
-
ジュースがない
プログラム
例題(じょうけんぶんき)

すすむ
すすむ
もし(おかしがある)なら {
たべる
}
もし(ジュースがある)なら {
のむ
}練習問題3
カード
-
すすむ
-
右むけ右
-
たべる
-
のむ
-
くりかえし
-
カスタム
-
もし…なら

じょうけん
- お菓子がある
- お菓子がない
- ジュースがある
- ジュースがない
テクニックのおさらい
- くりかえし
- カスタムカードをつくる
- じょうけんぶんき
左むけ左 {
右むけ右
右むけ右
右むけ右
}くりかえし(4){
左むけ左
すすむ
右むけ右
すすむ
もし(おかしがある)なら {
たべる
}
もし(のみものがある)なら {
のむ
}
}プログラム
カスタムカード
練習問題3

カード
-
すすむ
-
左むけ左
-
たべる
-
のむ
-
くりかえし
-
カスタム
-
もし…なら…
じょうけん
- お菓子がある
- お菓子がない
- ジュースがある
- ジュースがない
-
すすめる
-
すすめない


チャレンジステージ2
チャレンジステージ2
くりかえし(1000){
もし(すすめない)なら {
右むけ右
}
それ以外なら {
すすむ
もし(おかしがある)なら {
たべる
}
もし(のみものがある)なら {
のむ
}
}
}プログラム

ファイナルステージ
カード
-
すすむ
-
右むけ右
-
たべる
-
のむ
-
くりかえし
-
カスタム
-
もし…なら…
じょうけん
- お菓子がある
- お菓子がない
- ジュースがある
- ジュースがない


アイテム


まとめ
- プログラムの「正解」は一つじゃない
あるのは「目的」だけ - ロボットはかしこくない
- たくさん考えること
- プログラミングっぽい考え方
- スクラッチ
おうちであそべるプログラミングゲーム


- Swift Playground
せんせいをプログラミングしてお菓子をげっとしよう
By Naokazu Terada
せんせいをプログラミングしてお菓子をげっとしよう
ななめな学校2「せんせいをプログラミングしてお菓子をげっとしよう」授業資料 2017.11.26
- 700