マガジンのカバー画像

プログラミングのピ

16
どのプログラミング言語から始めたらいいの?と思った時に読んでほしいかんたん講座。すこしずつ、ゆっくりと一歩一歩。 プログラミングに興味をもったお子様、親御さんに向けた基礎講座を…
運営しているクリエイター

#はじめてのプログラミング

1日目。超短いプログラムを見るだけの日

こんにちは。 プログラミングに興味を持たれましたか? 吾輩、プログラミング歴40+年で(メーカーで後年は新人教育担当したり、親子プログラミング教室のボランティアしたり)プログラミング好き定年退職者がプログミング好きかもなお子様と保護者の方、あるいは同志退職者、はたまたものづくりとかプログラミングな道に就職しようかなと考え始めた方々に、ちょっぴりでも道案内ができたらと思い書き始めております。 善は急げ、考える前にさっそく始めてしまいましょう。 今日伝えたいこと プログラ

2日目。3行に増えたプログラムを見るだけの日

こんにちは。昨日のは簡単でしたか? 最初はゆっくりいきますよ。今日は昨日の復習です。 今日伝えたいこと 昨日と同じです。 昨日覚えたことを思い出しましょう。 プログラムにはあらかじめ決められた入口があります 対象となるものに対して実行してもらいたいことを、短い命令に分けて順番に並べたものをプログラムといいます 今日のプログラム 今日は3つLEDをつけましょう。 プログラムを実行すると Bボタンを押すと、真ん中と、その右と、その右のLEDの3つが光ります。 プ

3日目。超短いプログラムを書いてみる日 プログラムして実行だ!

こんにちは。 さぁ、プログラミングして実行しましょう。 昨日の記事の予告に書いたサイトを開いて、この下の動画を見て同じようにブロックを並べていってね。 今日伝えたいこと makecodeという開発環境を使ってmicro:bitをプログラミングしましょう。 今日は1日目で読んでもらったプログラムを作って実行します。 動画を見て真似しながら次のことを実感してください。 プログラミングってこういう事か 実行するってこんなことかぁ 今日のプログラム 1つだけLEDをつけ

4日目。変数は名前が命。hogeとか真似してると上手くなれないから注意ね。

こんにちは。今日は変数。 これでプログラムっぽくなる。 プログラムにバグはつきもの。今はわからなくても、長いプログラムを書くようになると誰もが経験するよ。変数は簡単に理解できるけど、バグの元でもあるのでよーく考えて名前をつける習慣づけがとても大切。って絶対忘れるけど、今日はそれだけ覚えてってください。 今日伝えたいこと 変数は名前付けがとっても大切と覚えましょう 変数とは、値に名前をつけたもののことです 数学の変数のように値を記憶する機能と、値を区別して扱いやすくする

6日目。ボタンを押したらLEDがうごくぞ

こんにちは。 今日はLEDを砲台にみたてて、左右に動かす。です。 昨日のは動かしてみました? LEDの位置を一番下にしたらちょっと (インベーダーゲームの)砲台っぽく見えたので、今日はLEDの動きをそれっぽいものに変えてみるというのをやりましょう。 昨日のプログラム(再掲) 今日伝えたいこと ・いきなりプログラムを直し始めないこと。  問題をきちんと理解して、今の動きをよく観察して、その動きの原因を推察して、こうすればできるだろうと仮説を立ててから、プログラムを書いて

7日目。関数って何

こんにちは。 今日は関数を学ぼうとおもいますが、その前に昨日の問題、 LEDが伸びて見えるのはなぜだろう。 これは次のLEDが点灯する時に、今のLEDも点灯しているからですね。 だから、次のLEDを点灯する前に、今のLEDを消せば良い。 で、「次の」というのは、「変数xを1増やす」ということなので、1増やす前、すなわち「今の」xを使ってLEDを消灯すれば良い。 移動するように見せられたら、 左側にもどれるプログラムをAボタンに割り当てよう。 「ボタンBが押されたとき

8日目。関数は便利なのだよ

こんにちは。 今日は関数が便利なことをもっと学びましょう。 昨日はここまででした。 Bボタンの方を関数化したのですが、Aボタンはどうしましょうか。 同じように「砲台を左に動かす」関数を作ってみます。 このふたつを比べると、違うところは1箇所だけですよね。 そこをパラメーターとして渡すことで、ひとつの関数にまとめることができます。 次の動画を見てください。 今日はここまで。 次回予告 関数のまとめをやります。 → 9日目。関数よもやま話

9日目。関数よもやま話

こんにちは。 今日は関数について読むだけの日とします。 なお、関数にはまだ「戻り値を返す」機能があり、それを使うと数学の関数のような使い方ができます。後日必要になった時に説明しますね。 関数とは 一連の処理に名前をつけたもの プログラミングはたくさんの小さな関数を作ることと言ってもいいくらい良く作ります 関数を作る時に気にしてほしい点 ・関数やパラメーターに何をするのかが良くわかる名前をつけること ・関数に分けるの面倒くさいなぁと思わないこと 関数を作るタイミング

10日目。ループで弾発射!

こんにちは。 今日は弾を打ち出しましょう。 今日伝えたいこと ・関数分けの例を示したい ・同じようなことを何度も繰り返すときはループを使えばループのなかに1回分の処理を書くだけでOK。とても便利。ということ。 砲台はボタンを押された時に横にひとつ動かしましたが、弾はボタンが押された時にLEDを4回、上に向かって順に動かします。 弾が飛んでいるように見えるプログラム(第1案) 順にコードを追っていきましょう。 yが3は砲台の一つ上の位置です。そこのLEDを点灯し、光

11日目。ループ、ループ

こんにちは。 ループブロックは昨日使ったものの他にあと3つありました。 今日伝えたいこと ・ループの形はひとつではない ・どのループでも結果的に同じ動作をさせられるが、目的によって向き不向きがある 2つ目のループ 違いはオレンジの線で示したところだけですが、昨日使ったループブロックは、今回の問題に使うには繰り返し指定の4が冗長でした。 こちらのループブロックを使った方が良かったです。 こちらのループが一番汎用的なループの形です。論理ブロックをまだ説明していなかったの

12日目。UFO飛来! ようやく条件分岐の出番なのか?!

1日目から読む こんにちは。 とうとうUFOが来ちゃいましたよ。 吾輩、かつては薄暗い喫茶店のテーブルの上に100円玉何枚も積み上げて侵略者から地球を守っていました。45年後に100円玉30枚くらいで似たようなゲームを作って遊べるコンピューターが買えるなんて想像もできずに。 さて、上の動画で示した飛ばし方をプログラムしてください。 どれが一番かんたんに作れるでしょうか?しかしてその根拠は如何に? 今日伝えたいこと ・アルゴリズムという言葉を覚えて欲しい。そしてアル

13日目。UFOの往復飛行、予想よりむずっ💦変数と分岐の増加でおこるむずっ💦

こんにちは。 残った「3.往復」飛行特徴のプログラムを作りましょう。 今日伝えたいこと うまくいかないこともあるけれど、あきらめないでっ💦 まずは観察から 案1 関数に渡ってくる情報としてはxひとつなので、たとえば3が渡ってきた場合、2->3と増えつつある3なのか、4->3と減りつつある3なのかの判断がつきません。 3は4より小さいので、必ず1を加えるブロックの方に進んでしまいます。4と3をひたすら往復するだけの動作となってしまいました。 失敗です。 案1修正版

14日目。シンプルイズベスト。分岐をなくしたらすっきりした。

こんにちは。 今日伝えたいこと ・こたえはひとつじゃない ・分岐をなくすと気持ちいい 準備体操 12日目の説明に戻ります。シンプル飛行特徴のプログラム。 こう説明しましたが、 小学校で割り算を習った時の「余り」を思い出しました。 それを応用します。 案2 さて、昨日の宿題です。 x座標を 0→1→2→3→4→3→2→1 の順番でつくるのが予想外に複雑になったので、別の作り方を考えようという宿題でしたが、 この順番で作るのは無理。と諦めることから始めます。 「

15日目最終回。未完成プログラムができあがりましたので見にきてください。

こんにちは。 ここまでできました 伝えたかったこと 順次・変数・関数・繰り返し・分岐を組み合わせることでプログラムは作られるということ プログラムの作り方はひとつではなく、複雑な書き方でも動くけれど、単純でわかりやすいプログラムを書く方が良いということ 単純でわかりやすいプログラムを書くために必要なこと ・変数には「名は体を表す」良い名前をつける ・変数は最初に初期化しておく ・変数には書き換わる変数もあるが、変わらない変数も多くある ・関数に小分けして、何をや