> javaのディレクトリをつくって、そのディレクトリ内に移動してファイルを > 保存しても、ホームディレクトリの中に保存されてしまうのですが、何がま > ずいのでしょうか? ktermのウィンドウ(mkdir java, cd javaを実行)のカレントディレクトリを 変更しても,muleのウィンドウでファイルを保存するディレクトリは変化しま せん.ファイルを開いたり,保存する際に,ディレクトリ名 java/ も付け加え てファイル名を指定してください.
class Test { public static void main(String[] argv){ System.out.println("Hello World"); System.out.println("Hello Again"); } }上のプログラム Test.java をコンパイル,実行してうまくいくのを確認した 上で,以下のような変更をした時,どのようになるか(コンパイル時に○○○ というエラーが出た,実行時に○○○というエラーが出た,実行できてこうい う出力が得られた)を書きなさい.エラー出力,実行結果などは,カット & ペー ストで入れるのが望ましい.なお,変更内容は学生証番号の下1桁によって, 変える.
ktanaka@ux019> javac Test.java Test.java:1: クラスまたはインタフェース宣言がありません。 Test { ^ エラー 1個というエラーが出る.
ktanaka@ux019> java Test In class Test: main must be public and staticというエラーが出る.
ktanaka@ux019> java Test In class Test: void main(String argv[]) is not defined
ktanaka@ux019> javac Test.java Test.java:3: ')' がありません。 System.out.println(Hello World); ^ エラー 1個ちうエラーが出る.
ktanaka@ux019> java Test Hello World Hello Againという出力結果が得られる.
この問題は,以下のような目的で出題している.
TTTTTTT TTTTTTT T T T T T T T .. T T .. T
解答例
class MyName { public static void main(String[] args){ System.out.println("TTTTTTT TTTTTTT"); System.out.println(" T T"); System.out.println(" T T"); System.out.println(" T T"); System.out.println(" T .. T"); System.out.println(" T .. T"); } }
講評
大部分の人が正解していた.繰り返しなどを利用すればもっときれいに書け
るのにという感想を持った人が多かった.たしかに,イニシャルによっては,
class MyName { public static void main(String[] args){ int i; System.out.println("TTTTTTT TTTTTTT"); for(i=0;i<3;i++) System.out.println(" T T"); for(i=0;i<2;i++) System.out.println(" T .. T"); } }のように書けることはあるが(行数は変わっていない),プログラムの読みやす さを考えると,元のものより劣る(なお上のプログラムの意味は今日の授業中 で説明する).
なお,Unixにはbannerコマンドというものがあって,
ktanaka@ux019> banner "T.T" ####### ####### # # # # # # # ### # # ### # # ### #のようになるが,このようなプログラムはより難しい問題である.