welcome: please sign in
location: "Java"の差分
62と248のリビジョン間の差分 (その間の編集: 186回)
2009-09-27 01:23:46時点のリビジョン62
サイズ: 4263
編集者: masahiko
コメント:
2012-02-14 06:12:57時点のリビジョン248
サイズ: 3116
編集者: masahiko
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 2: 行 2:
== Javaプログラミング演習 ==
行 3: 行 4:
Java(応用プログラミングA)資料、課題はmoodleにあります。 プログラミング関連の授業で使用した資料です。
行 5: 行 6:
=== 授業目標 ===
 Java言語によるプログラミングの演習をとおして、プログラミングにおける動的あるいは静的なものごとの考え方を学びます。
=== 授業概要 ===
 Java言語を使ったプログラミングの演習を行い、クラス、オブジェクト、構造について学びます。
 授業ではパソコンや学内ネットワークシステムを利用します。
=== 授業計画(2009年度の内容) ===
=== Java概要 ===
 . [[Javaとはどんな言語なのか]]
 . [[処理系の使い方]]
行 12: 行 10:
||1||Java概要||[[Javaとはどんな言語なのか]], [[処理系の使い方]]||[[Java課題01]]||
||2||Cとの相違||[[プログラムの書き方]], [[表示のための命令]], [[Javaの構文]], [[基本データ型]]||[[Java課題02]]||
||3||配列と文字列|| arg[] || ||
||4||オブジェクト|| || ||
||5||メソッド|| || ||
||6||他のクラスを使う||static, public, private リスト処理|| ||
||7||入出力|| || ||
||8||グラフィックス|| AWT APIを調べる || ||
||9|| || || ||
||10||イベントドリブン||mouse event || ||
||11|| || || ||
||12||アプレット|| || ||
----
 . [[Java課題01]]
行 25: 行 13:
2009年度の修正予定
 * Linuxサーバ上でのコンパイルと実行を加える
 * 線形リストを単純な課題に修正
 * アプレットの前にAWTを追加
----
==== 2008の内容 ====
||1||Java概要||[[Javaとはどんな言語なのか]], [[処理系の使い方]]||
||2||Cと似ているところ||[[プログラムの書き方]], [[Cの構文との比較]], [[表示のための命令]]||
||3||Cとの違い||[[プリミティブとオブジェクト]], [[配列]]||
||4||文字列||[[String]], [[コマンドライン引数]]||
||5||変数とクラス||[[変数の宣言と初期化]],[[プログラム作成の手順]],[[クラス]]||
||6||コンストラクタ||[[コンストラクタ]],[[インスタンスをつなぐ]]||
||7||メソッド||[[メソッド]],[[メソッドを作る]]||
||8||複数のクラスを使う||[[複数のクラスを使う]],[[列車を作る]]||
||9||継承||[[継承]],[[電車を作る]]||
||10||static||[[static変数]],[[break文]]||
||11||ここまでのまとめ||[[修飾子]],[[クラスのまとめ]],[[解答]]||
||12||アプレット||[[アプレット]],[[APIを調べる]]||
||13||アプレット(続き)||[[アプレットの初期化]],[[マウスイベント]]||
||14||総合課題||[[15ゲームを作る]]||
やり残したこと
 . collection
 . arrayList
 . 入出力、バイトストリームとテキストストリーム
 . 例外処理
第2回 Cと似ているところ (10/5)
 . [[プログラムの書き方]]
 . [[Javaの構文]]
 . [[基本データ型]]
 . [[変数の宣言と初期化]]
 . [[算術演算]]
 . [[表示のための命令]]
 . [[Java課題02]]
行 51: 行 22:
課題2
 . 次の虫食い算を解くためにCで書いたプログラムを示します。
 . 四角の場所には数字の1つが入ります。
 . 左端の四角はゼロではありません。
 . 5つある星の場所には同じ数字が入ります。
第3回 配列 (10/12)
 . [[基本型以外のデータ]]
 . [[配列の宣言と初期化]]
 . [[配列]]
 . [[定数の宣言]]
 . [[論理式]]
 . [[Java課題03]]
行 57: 行 30:
{{{
#include <stdio.h>
第4回 文字列と入力 (10/19)
 . [[メソッド呼び出しの方法]]
 . [[数学関数]]
 . [[String]]
 . [[キーボードからの入力]]
 . [[Java課題04]]
行 60: 行 37:
int main(int argc, char *argv[])
{
    int a, b1, b2, c1, c2, d;
第5回 オブジェクト (10/26)
 . [[Java解答04]]
 . [[オブジェクト]]
 . [[クラス]]
 . [[Java課題05]]
行 64: 行 43:
    for (a = 100; a <= 999; a++)
    {
        for (b1 = 1; b1 <= 9; b1++)
        {
            for (b2 = 1; b2 <= 9; b2++)
            {
                c2 = a * b2;
                c1 = a * b1;
                d = 10*c1 + c2;
                if (keta(c2,3)==b1 && keta(c2,1)==b1 && keta(c1,1)==b1 && keta(d,2)==b1 && c1 <= 999)
                    printf("%d * %d%d = %d %d = %d\n", a,b1,b2,c2,c1,d);
            }
        }
    }
}
第6回 メソッド (11/2)
 . [[Java解答05]]
 . [[クラスの定義]]
 . [[アクセス修飾子]]
 . [[メソッド]]
 . [[コンストラクタ]]
 . [[Java課題06]]
行 80: 行 51:
int keta(int su, int ichi)
{
    while (ichi > 1)
    {
        su /= 10;
        ichi--;
    }
    return su % 10;
}
}}}
問題
1)このプログラムをJavaに書き直しなさい。[必須課題]
2)条件を追加し、正しい答えだけが表示されるようにしなさい。[応用課題]
第7回 オブジェクトをつなぐ (11/9)
 . [[オブジェクトをつなぐ]]
 . [[つながったオブジェクトを表示する]]
 . [[Java課題07]]
行 94: 行 56:
上のプログラムをコピーして使ってもよいが、慣習にしたがい美しいプログラムにしあげること。 第8回 リスト処理 (11/16)
 . [[オブジェクトを沢山つなぐ]]
 . [[オブジェクトをつなぐメソッド]]
 . [[オブジェクトを除くメソッド]]
 . [[線形リスト]]
 . [[Java課題08]]
行 96: 行 63:
ヒント
main関数は public static void main(String[] args) に変わります。
keta関数にも static 修飾子を付けてください。
第9回 継承 (11/30)
 . [[線形リストの操作]]
 . [[継承]]
 . [[継承の例]]
 . [[複数クラスのコンパイル]]
 . [[Java課題09]]
行 100: 行 70:
プログラムのファイル名は Lesson2.java とし、正しく実行できることを確かめてから、Lesson2.javaファイルを提出しなさい。 第10回 入出力 (12/7)
 . [[まとめと補足]]
 . [[break文]]
 . [[コマンドライン引数]]
 . [[既存のクラスを利用する]]
 . [[ファイル入力]]
 . [[Java課題10]]

第11回 グラフィックス (12/14)
 . [[Swing]]
 . [[ウインドウの表示]]
 . [[ウインドウの内容]]
 . [[APIを調べる]]
 . [[Java課題11]]

第12回 画像とマウス (12/21)
 . [[画像を表示する]]
 . [[イベントドリブン]]
 . [[Java課題12]]

第13回~15回 15ゲームを作る
 . [[15ゲーム]]
 . [[15ゲーム作成]]
  1. 画像を表示する。[[画像を表示する(2)]]
  1. 画像の使う位置と表示位置を指定して表示する。[[画像を表示する(3)]]
  1. マウスのボタンが押された位置を読み取る。[[クリック時の処理(1)]]
  1. マウスのボタンがどのピースの位置で押されたか判定する。[[クリック時の処理(2)]], [[色]]
  1. 盤の状態と配列の対応を理解する。[[盤の表現]]
  1. 配列の内容に応じて表示を行う。[[盤の表示]]
  1. クリックした位置に応じてピースの移動を行う。[[ピースを動かす]]
  1. 全体がうまく並べられたか判定する。 [[解のある配置を作る]]
 . [[Java課題14|中級上級の課題]]
 . [[Jarファイル]]

未使用
 . [[クラスを利用する]]
 . [[アプレット]]

Javaプログラミング演習

プログラミング関連の授業で使用した資料です。

Java概要


第2回 Cと似ているところ (10/5)

第3回 配列 (10/12)

第4回 文字列と入力 (10/19)

第5回 オブジェクト (10/26)

第6回 メソッド (11/2)

第7回 オブジェクトをつなぐ (11/9)

第8回 リスト処理 (11/16)

第9回 継承 (11/30)

第10回 入出力 (12/7)

第11回 グラフィックス (12/14)

第12回 画像とマウス (12/21)

第13回~15回 15ゲームを作る

未使用

Java (最終更新日時 2012-03-27 05:09:20 更新者 masahiko)