「コンピュータとプログラミング」に関する過去の単元計画です。
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%のガチャを作成する |
5 | 100連ガチャ発展問題 | 「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 | ガイダンス コンピュータの役割 | 入力と処理と出力 五大装置 人間との比較 |
2 | Scratchを触ってみよう | 参考文献:「Scratchの絵本」 (翔泳社) |
3 | ディフェンスゲームを作る | こちら(動画前編・後編・サイト)を参考にしました。 |
4 | 作ったものの振り返り | 変数・順次・分岐・繰り返し・メッセージ |
5 | Scratchでゲームを作ろう | 最初にどんなゲームを作るかを計画→実装、という流れをとりました |