到達目標
1. プログラムを便利に書くための定数と,プログラムの応用の幅を広げる乱数を用いたプログラムを作成できる.
2. あらかじめ回数を決めずに繰り返しを続けるwhile文を用いたプログラムを作成できる.
3. 配列を用いたプログラムを作成できる.
4. 多次元配列の基本である2次元配列を用いたプログラムを作成できる.
5. 文字列や文字をデータとして扱ったプログラムを作成できる.
6. 同じ処理を効率的に実行させるためのクラスメソッドを作成できる.
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
定数と乱数 | 自分の力で定数や乱数を用いたプログラムを作成できる. | 教科書や配布資料を見ながら定数や乱数を用いたプログラムを作成できる. | 定数や乱数を用いたプログラムを作成できない. |
while文 | 自分の力でwhile文を用いたプログラムを作成できる. | 教科書や配布資料を見ながらwhile文を用いたプログラムを作成できる. | while文を用いたプログラムを作成できない. |
配列 | 自分の力で配列を用いたプログラムを作成できる. | 教科書や配布資料を見ながら配列を用いたプログラムを作成できる. | 配列を用いたプログラムを作成できない. |
多次元配列 | 自分の力で多次元配列を用いたプログラムを作成できる. | 教科書や配布資料を見ながら多次元配列を用いたプログラムを作成できる. | 多次元配列を用いたプログラムを作成できない. |
文字と文字列 | 自分の力で文字や文字列を用いたプログラムを作成できる. | 教科書や配布資料を見ながら文字や文字列を用いたプログラムを作成できる. | 文字や文字列を用いたプログラムを作成できない. |
メソッド | 自分の力でメソッドを作成できる. | 教科書や配布資料を見ながらメソッドを作成できる. | メソッドを作成できない. |
学科の到達目標項目との関係
教育方法等
概要:
ソフトウェア開発のために、次のようなプログラミング技術の基礎を修得する。
(1)コンピュータを使って問題を解く手順は1通りではない。この授業では、特に手順を考える力をつけることを目的とした授業を行う。
(2)問題を解く手順をフローチャートに表し、コンピュータで実行するためにプログラミングの方法を学ぶ。プログラミング言語としては、現在広く普及しているJava言語を取り上げる。
授業の進め方・方法:
【授業の進め方】
各授業の冒頭30分程度で,教科書に沿ったスライドを用いながらプログラムの文法やメソッドの使い方を解説する.その後,各単元の定着を図るために教科書の例題や準備した練習問題を実装する.「総合演習」では,教科書の練習問題や別途準備した練習問題に取り組むことで,さらなるプログラミング能力の定着を図る.また,新規学習項目に関しては,授業開始時までにProgateを用いて予習を行うこととする.
授業で使用したスライドはTeamsにアップロードする.
注意点:
【成績評価】
・各章の演習問題の取り組みによって評価する.各演習問題は下記に従って4点満点で評価する.各演習問題の作成したプログラムは指定するTeamsに,指定されたファイル名でアップロードすること.
実行結果が正しく出力される:4点,実行結果の一部に不備がある:3点,実行結果に大きな誤りがある:2点,演習問題を提出しているが,コンパイルが通らない:1点,未提出:0点
・Progateによる予習の達成具合で各単元の課題点として下記の評価割合に従って評価する.なお,Progateの予習箇所は授業中に指示を行う.
・最終成績:演習(例題)30% + 演習(練習問題)60% + Progateによる学習10%
【関連科目】
基礎プログラミングI(1年),基礎プログラミング演習(1年)基礎コンピュータ工学(1年)、コンピュータの基礎知識(1年)、プログラミング言語(2年)、プログラミング(2年)
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
後期 |
3rdQ |
1週 |
オリエンテーション 第6章:定数と乱数【便利な書き方】 6.1 定数 6.2 乱数 総合演習 |
・本授業の進め方や成績評価等についての説明を行う. ・プログラムにおける定数の役割について理解し,定数の宣言ができるようになる. ・Math.random メソッドを用いて乱数を発生させ,乱数を使用したプログラムを作成できる. ・教科書の練習問題,別途用意した練習問題を通して,定数・乱数についての理解を深める.
|
2週 |
第7章:while文【決まっていない回数の繰り返し】 7.1 while文の書き方 7.2 do-while文 7.3 break, continue 7.4 for, while, do-whileの比較 |
・あらかじめ回数を決めずに繰り返し処理を行う while を使ったプログラムを作成できる. ・while と似た do-while について学び,do-while を使ったプログラムを作成できる. ・繰り返しを途中で終わらせる break を使ったプログラムを作成できる. ・繰り返しの戦闘に強制的にジャンプする continue を使ったプログラムを作成できる.
|
3週 |
総合演習 |
・教科書の練習問題,別途用意した練習問題を通して,while 文についての理解を深める.
|
4週 |
第8章:配列【たくさんのデータを扱う方法】 8.1 配列の宣言方法
|
・配列の宣言方法について学び,配列を使ったプログラムを作成できる.
|
5週 |
総合演習 |
・教科書の練習問題,別途用意した練習問題を通して,配列についての理解を深める.
|
6週 |
総合演習
|
・値型データと参照型データの違いについて理解し,配列の代入を使ったプログラムを作成できる. ・配列の中身をコピーする方法について学び,配列のコピーを使ったプログラムを作成できる. ・for 文を使って配列の要素を操作するプログラムを作成できる. ・拡張 for 文の書式について学び,拡張 for 文を用いたプログラムを作成できる.
|
7週 |
第8章:配列【たくさんのデータを扱う方法】 8.2 配列の代入 8.3 配列のコピー 8.4 配列と拡張 for文 第9章:多次元配列【さらにたくさんのデータを扱う方法】 9.1 2次元配列の宣言方法 9.2 でこぼこな配列 |
・値型データと参照型データの違いについて理解し,配列の代入を使ったプログラムを作成できる. ・配列の中身をコピーする方法について学び,配列のコピーを使ったプログラムを作成できる. ・for 文を使って配列の要素を操作するプログラムを作成できる. ・拡張 for 文の書式について学び,拡張 for 文を用いたプログラムを作成できる. ・2次元配列の宣言の書式について学び,2次元配列を使ったプログラムを作成できる. ・行ごとに配列の大きさが異なる配列の宣言方法について学び,プログラムを作成できる.
|
8週 |
総合演習 |
・教科書の練習問題,別途用意した練習問題を通して,配列についての理解を深める.
|
4thQ |
9週 |
総合演習 |
・教科書の練習問題,別途用意した練習問題を通して,多次元配列についての理解を深める.
|
10週 |
第10章:文字と文字列【文章を扱う】 10.1 文字列の基本操作 10.2 文字の比較 10.3 文字と文字列を扱う上での注意 10.4 高度な文字列操作 総合演習 |
・文字列の比較や文字列の長さの取得,文字列から文字を取り出す方法を学び,プログラムを作成できる. ・文字の比較を行う方法を学び,プログラムを作成できる. ・部分文字列の取得や文字列の検索,文字列の置換・削除,大文字・小文字の変換の方法を学び,プログラムを作成できる.
|
11週 |
総合演習 |
・教科書の練習問題,別途用意した練習問題を通して,文字と文字列についての理解を深める.
|
12週 |
第12章:メソッド【プログラムを部品化する】 12.1 メソッドの基本構成 12.2 メソッドの宣言 12.3 メソッドの引数 |
・メソッドの宣言方法について学び,メソッドの構造や呼び名を理解できる. ・具体的な例を交えてメソッド宣言の方法や流れの方法を学び,メソッドの基礎を理解できる. ・メソッドの引数と戻り値の関係を理解できる.
|
13週 |
第12章:メソッド【プログラムを部品化する】 12.4 メソッドオーバーロード 12.5 メソッドに配列を返す 12.6 値を返さないメソッド |
・メソッドオーバーロードについて学び,メソッドオーバーロードを使ったプログラムを作成できる. ・メソッドの引数に配列を渡す場合の仮引数の表記について学び,関連するプログラムを作成できる. ・値を返さないメソッドや void について学び,関連するプログラムを作成できる.
|
14週 |
総合演習 |
・教科書の練習問題,別途用意した練習問題を通して,メソッドについての理解を深める.
|
15週 |
総合演習 |
・教科書の練習問題,別途用意した練習問題を通して,メソッドについての理解を深める.
|
16週 |
|
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | プログラミング | 代入や演算子の概念を理解し、式を記述できる。 | 2 | |
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 2 | |
変数の概念を説明できる。 | 2 | |
データ型の概念を説明できる。 | 2 | |
制御構造の概念を理解し、条件分岐を記述できる。 | 2 | |
制御構造の概念を理解し、反復処理を記述できる。 | 2 | |
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 | 2 | |
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 2 | |
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。 | 2 | |
評価割合
| 演習(例題) | 演習(練習問題) | Progateによる学習 | 合計 |
総合評価割合 | 30 | 60 | 10 | 100 |
基礎的能力 | 0 | 0 | 0 | 0 |
専門的能力 | 30 | 60 | 10 | 100 |
分野横断的能力 | 0 | 0 | 0 | 0 |