Report#1:

課題:次の例題Helloを以下の条件に従って書き換えて出力しなさい。

/*プログラムの例 (Hello.java)*/
public class Hello {
    public static void main(String[] argv){
        System.out.println("Hello,Java world!");
    }
}
a.出力するメッセージを変更せよ。
b.同じメッセージを3回、別々の行に出力せよ。
c.『Hello,』と『Java world!』を別々の行に出力せよ。
d.System.out.println(...)とSystem.out.print(...)の違いについて述べ よ。
e.同じメッセージを3回、同一行に出力せよ。
f.次のような菱形模様(「*」を用いる)を出力せよ。
   *
  ***
 *****
  ***
   *
g.「*」を用いて、自分の好きな形を出力せよ。

a.出力メッセージの変更

メッセージ変更のみなのでここでは割愛します。

b.同じメッセージを3回、別々の行に出力

~ソースコード~

/*同一メッセージを3回、別々の行に出力*/
public class rep1b {
    public static void main(String[] argv){
        for(int n=0;n<3;n++){                   /*for文でメッセージ表示を3回*/
            System.out.println("Kind of blue"); /*リピート */ 
        }
    }
}

~出力結果~

[Yuta-AKAMINE:~/Javaworks] j03002% javac rep1b.java
[Yuta-AKAMINE:~/Javaworks] j03002% java rep1b
Kind of blue
Kind of blue
Kind of blue
[Yuta-AKAMINE:~/Javaworks] j03002%

c.「Hello」、「Javaworld」を別々の行に出力

/*System.out.print(....)を試験的に使用*/
public class rep1c {
    public static void main(String[] argv){
        System.out.print("Hello,\nJava world!\n"); 
        System.out.println("Hello");       /*System.out.print(..)と、*/
        System.out.println("Java world!"); /*System.out.println(..)の違いを*/
    }                                      /*比較するために並べて使用      */ 
}

~出力結果~

[Yuta-AKAMINE:~/Javaworks] j03002% javac rep1c.java
[Yuta-AKAMINE:~/Javaworks] j03002% java rep1c
Hello,
Java world!
Hello
Java world!
[Yuta-AKAMINE:~/Javaworks] j03002%

d.System.out.println(...)とSystem.out.print(..)の違いについて

Cでの比較の結果を見ると、println(..)には数字や文字を出力後に改行する機能があり、
print(..)にはその機能がない事が分かる。ただし、c言語と同様に\nで改行する部分を
指定する事ができ、バックスペースや水平タブなども指定出来る。

e.同じメッセージを3回連続で同一行に出力

/*System.out.print(..)を使った出力*/
public class rep1e {
    public static void main(String[] argv){
        for(int c=0;c<3;c++){             /*for文を作って一行に三回連続で*/
            System.out.print("Destroy!"); /*同じ文字を出力     */
        }
        System.out.print("\n");           /*三回出力後に改行して終了*/ 
    }
}

~出力結果~

[Yuta-AKAMINE:~/Javaworks] j03002% javac rep1e.java
[Yuta-AKAMINE:~/Javaworks] j03002% java rep1e
Destroy!Destroy!Destroy!
[Yuta-AKAMINE:~/Javaworks] j03002%

f.「*」を用いた菱形模様の出力

/*菱形模様の出力*/ 
public class rep1f {
    public static void main(String[] argv){
        for(int a=0;a<5;a++){        /**の必要な出力行数分に応じてfor文を設定*/
            if( a==0 || a==4){               /*出力1行目と5行目に*一つ出力 */
                System.out.println("  *  "); 
            }else if( a==1 || a==3){         /*出力2行目と4行目に*三つ出力*/
                System.out.println(" *** ");
            }else if( a==2){
                System.out.println("*****"); /*出力3行目に*五つ出力*/
            }
        }
    }
}

~出力結果~

[Yuta-AKAMINE:~/Javaworks] j03002% javac rep1f.java
[Yuta-AKAMINE:~/Javaworks] j03002% java rep1f
  *  
 *** 
*****
 *** 
  *  
[Yuta-AKAMINE:~/Javaworks] j03002%

g.好きな模様を*で出力

~出力結果~

[Yuta-AKAMINE:~/Javaworks] j03002% javac rep1g.java
[Yuta-AKAMINE:~/Javaworks] j03002% java rep1g
**             ***                **
 **           ***                ****
  **         ***                *** **
   **       ***                ***   **
    **     ***                ***     **
     **   ***                ***       **
      ** ***                ***         **
        ***                ****************
        ***               ***             **
        ***              ***               **
        ***     ***     ***                 ** 
        ***     ***    ***                   **

考察と感想

コンパイルエラーについて考えようと思ったのですが、エラー表記が文字化け を起こしたまま治らなずさっぱりでした。
でも一応文法が怪しいと思われる箇所には、その部分の段落の番号と文字化け した文字が表示されるのでそれで修正作業は進められました。
課題の一番最後の図形の出力はSystem.out.println(...)の羅列で作りました。 あんまり手が込んでません。しょんぼりです。
話は変わりますが、頂いたプ ログラム例の通りに、コマンドラインから入力した文字を出力するプログラムを 作ってみたのですが、コンパイルは通ったのにちゃんと動作しませんでした。
続けて調べてみたいと思います。