「コンピュータとプログラミング」単元計画:過去の記録

「コンピュータとプログラミング」に関する過去の単元計画です。

2022年度

当初は3学期に「モデル化とシミュレーション」「コンピュータの仕組み」「アルゴリズムとプログラム」を実施予定でしたが、思ったよりも時間が無く、「モデル化とシミュレーション」は急遽2学期に前倒しをしました。

「アルゴリズムとプログラミング」では、どう見ても5~6時間ほどしか時間を使えないことが判明し、どうしたものか頭を抱えている中、文部科学省の「高等学校情報科に関する特設ページ」に、Youtube動画が公開されていて、まずはこれをお手本に授業計画を作成していきました。実習はGoogle Colaboratory上で行いました。言語はPythonです。

コンピュータの仕組み

内容キーワード・参照した資料など
1ハードウェアとインタフェース【BYOD、今なら何を買う?:学校推奨端末のスペック比較】
コンピュータの特徴(入力→処理→出力)
五大装置(入力・出力・制御・演算・記憶)
CPU・主記憶装置・補助記憶装置
2論理回路論理回路とは?
AND回路・OR回路・NOT回路の作成
半加算回路の作成
実習ツールとして、論理回路シミュレータを利用しました
3ソフトウェアソフトウェアとは
基本ソフトウェア・応用ソフトウェア
ドライバ・アイコン
4誤差丸め誤差を発生させる実習(google spreadsheetを用いて)

モデル化とシミュレーション

内容キーワード・参照した資料など
1モデル化とは?シミュレーションとは?モデル化・シミュレーション
シミュレーションが使われる場面
モデルの分類
図的モデルの作成実習
2シミュレーションの実際Scratch上で感染症シミュレーションを体験する
感染症シミュレーションは、こちらの事例で紹介されているプログラムを改変しました
3シミュレーション実習「感染症シミュレーション」のパラメータを変えて、どのように結果が変わるか検討する

アルゴリズムとプログラミング

※項目6,7は、時間に余裕のあったクラスのみ実施。

内容キーワード・参照した資料など
1アルゴリズムアルゴリズムとは何か
アルゴロジック2を用いたアルゴリズム体験
2プログラミング実習1
「100連ガチャを作ろう」
文科省の公開動画をお手本に、下記の流れで実習を行いました。
順次構造(print文の使用)
変数・代入式
数値や文字列の代入
算術演算子
3プログラミング実習1
「100連ガチャを作ろう」
文科省の公開動画をお手本に、下記の流れで実習を行いました。
分岐構造(if-else文・elif文)
比較演算子
4プログラミング実習1
「100連ガチャを作ろう」
文科省の公開動画をお手本に、下記の流れで実習を行いました。
反復構造(for文)
まとめ:当選確率1%のガチャを作成する
5100連ガチャ発展問題「100連ガチャを作ろう」の完成版を指示通り改変する
6プログラミング実習2
「公正な発表の順番を決めよう」
文科省の公開動画をお手本に、下記の流れで実習を行いました。
変数・リスト
random.shuffleモジュール
7プログラミング実習2
「公正な発表の順番を決めよう」
文科省の公開動画をお手本に、下記の流れで実習を行いました。
関数(list関数・range関数)・引数
まとめ:公正な発表の順番を決める(※1~40までの数字をランダムにシャッフルするプログラムを作る)

2021年度

Pythonによるプログラミング入門(2021年度)

英理女子学院高等学校 iグローバル部2年「数理情報」(2学期)、1年「情報の科学」(3学期)にて実施。教材は自作のものを使い、Google Colaboratoryを利用し、自習形式で進めました。基本的に「相談や教えるために席は自由に動いてOK」という環境のもと、授業を進めていきました。1年生の授業は、オンライン対応となったため、自習がしやすいように動画も作成しました。進度に個人差が出やすい単元でもあるため、「まとめの問題」を作成し、習熟の早い生徒にはそちらに取り組むようにも指示していました。

内容キーワード・参照した資料など
1アルゴリズムとは?
授業の進め方
順次・分岐・繰り返し
1年では、アルゴロジックも利用しました
2順次構造
「その1」「その2」
【その1】四則演算・変数・print関数
【その2】型・input関数・int関数
3条件分岐ifの基本的な描き方
比較演算子・論理演算子
4繰り返しその1:for文For文の書き方・リスト・リストとFor文
5繰り返しその2:while文最初にどんなゲームを作るかを計画→実装、という流れをとりました
6関数関数とは?
関数の基本的な書き方(引数・戻り値含む)
※1年・2年とも未実施
7ライブラリライブラリとは?
ライブラリを用いたプログラムの例(calendar, random)
※2年のみ実施
8ライブラリを使った自由制作※2年のみ実施(3学期)

教材はこちら。

Scratchによるアルゴリズム入門(2021年度)

英理女子学院高等学校 キャリア部情報デザインコース2年「情報テクノロジー」(1学期)およびiグローバル部2年「数理情報」(1学期)にて実施。年度初頭アンケートではプログラミングの経験のある生徒はほぼゼロで、まずはブロックプログラミングで処理の流れを経験しようというところからスタートしました。学期末課題の内容は、ゲームを作成するというものでした。

内容キーワード・参照した資料など
1ガイダンス
コンピュータの役割
入力と処理と出力
五大装置
人間との比較
2Scratchを触ってみよう参考文献:「Scratchの絵本」 (翔泳社)
3ディフェンスゲームを作るこちら(動画前編後編サイト)を参考にしました。
4作ったものの振り返り変数・順次・分岐・繰り返し・メッセージ
5Scratchでゲームを作ろう最初にどんなゲームを作るかを計画→実装、という流れをとりました