[小西ホームページ]   [目次・索引]   [前の授業]   [次の授業]

情報処理技法(Javaプログラミング)II 第8回

目次
索引

スタックとキュー(2)

テキストpp.128--141を参照。


課題8

pp.132--136のList 4-3 [A]からList 4-3 [D]までは、ダウンロードしたプログラム・ファイルjava2\textbook\chap04\IntQueue.javaにまとまっています。 あらかじめ、そのファイルをjava2フォルダーにコピーしておいてください。 (Visual Studio Codeのファイル・ツリーでファイルをコピーするには、コピー元のファイルを右クリック→コピー、ファイル・ツリーの下の余白(java2フォルダーを意味します)を右クリック→貼り付け、です。)

p.138のList 4-4を参考にして、最大5個エンキューできるキューを生成し、そのキューに0から4までの整数を enque メソッドでエンキューし、その後、そのキューから5回 deque メソッドでデキューしてください。 その際、何をエンキューしたかや何をデキューしたかのメッセージを出力してください。 try-catch文は省略してください。

IntQueueTester2.java
class IntQueueTester2 {
    public static void main (String[] args) {
        IntQueue s = new IntQueue(5);
        int x;
        for (int i = 0; i < 5; i++) {
            
            
        }
        for (int i = 0; i < 5; i++) {
            
            
        }
    }
}
ターミナル
PS ...\Desktop\java2>  & ... 'IntQueueTester2'
エンキューしたデータは0です。
エンキューしたデータは1です。
エンキューしたデータは2です。
エンキューしたデータは3です。
エンキューしたデータは4です。
デキューしたデータは0です。
デキューしたデータは1です。
デキューしたデータは2です。
デキューしたデータは3です。
デキューしたデータは4です。
PS ...\Desktop\java2>

余力のある人は、エンキューするデータを0から5まで、デキューする回数を6回に変更してください。 try-catch文を利用して、キューが満杯や、キューが空というメッセージが出力されるようにしてください。

IntQueueTester3.java
class IntQueueTester3 {
    public static void main (String[] args) {
        IntQueue s = new IntQueue(5);
        int x;
        for (int i = 0; i < 6; i++) {
            
            
        }
        for (int i = 0; i < 6; i++) {
            
            
        }
    }
}
ターミナル
PS ...\Desktop\java2>  & ... 'IntQueueTester3'
エンキューしたデータは0です。
エンキューしたデータは1です。
エンキューしたデータは2です。
エンキューしたデータは3です。
エンキューしたデータは4です。
キューが満杯です。
デキューしたデータは0です。
デキューしたデータは1です。
デキューしたデータは2です。
デキューしたデータは3です。
デキューしたデータは4です。
キューが空です。
PS ...\Desktop\java2>

完成したら、答案(Javaプログラム)をメールで提出してください。 差出人は大学発行のメール・アドレス(学生番号@cis.twcu.ac.jp)とし、宛先はkonishi@cis.twcu.ac.jpとします。 メールの本文には、学生番号、氏名、科目名、授業日(11月14日)を明記してください。


参考文献


[小西ホームページ]   [目次・索引]   [前の授業]   [次の授業]

2025年11月14日更新
小西 善二郎 <konishi@cis.twcu.ac.jp>
Copyright (C) 2025 Zenjiro Konishi. All rights reserved.