コンピュータ基礎および演習II

演習問題

解答は earth.mlab.im.dendai.ac.jp/home/submit/1I-Computer2/[今日の日付]/[学籍番号] のディレクトリに提出しなさい。 ソースファイル (〜.java) のみを提出すること。

ファイルの送信には ftp ソフトを用いる。 Linux の gFTP を使った提出方法 (実験室のマニュアル) を参照すること。

- 変数と四則演算

問題1

文字を並べて画面上に絵を描くプログラムを書きなさい。 プログラムを実行したとき、例えば次のような文字を並べた絵が表示されれば良い。 ファイル名は AsciiArt.java とする。

           ##
         ######
       ###    ###
     ###        ###
   ###            ###
 ######################
   #                #
   #                #
   #  +--+  +--+--+ #
   #  |  |  |  |  | #
   #  |  |  +--+--+ #
   #  |  |  |  |  | #
   #  |  |  +--+--+ #
 ======================

問題2

わざとエラーを入れたプログラムを用意してある。 このプログラムをダウンロードし Errors.java という名前で保存し、 エラーをすべて修正して、正しく実行できるように直しなさい。

[ダウンロード]

プログラムの中身は次のようなものである。

crass Errors {
     pablic statik void main(String[] args) {
          System.out.pnintln("*****************************")
          System.out.println("*                           *");
          System.out.println('*                           *");
          System.out.println("*                           *);
          System.out.println{"*                           *"};
          System.out.println("*****************************"):
     }                                                                          
}

問題3

3つの int 型変数を用意し適当な値を入れ、 この3つの整数の平均を表示するプログラムを書きなさい。

ファイル名を Average.java としたとき、プログラムの概略は次のようになる。

問題4

2 つの変数 a, b の内容を入れ替えるプログラムを作りたい。 ここで、次のようなプログラムを考えてみよう。

class SwapAandB {
     public static void main(String[] args) {
          int a = 2;
          int b = 8;

          a = b;
          b = a;

          System.out.println("a=" + a + ", b=" + b);
     }
}

ファイル名は SwapAandB.java とする。

ところが、このプログラムをコンパイルし実行してみると、 a=8, b=8 となってしまい入れ換えがうまくできないことがわかる。 "a = b;" の行で ab の値で上書きすると 元の a の値が失われてしまうからである。

そこで ab の値で上書きする前に、 元の a の値を一旦別の変数 temp に保存しておき、 btemp の値を代入すれば良い。

プログラムの概略は次のようになる。 ファイル名は同様に SwapAandB.java とする。

class SwapAandB {
     public static void main(String[] args) {
          int a = 2;
          int b = 8;
          int temp;

          temp = ..... ;
          a = ...... ;
          b = ...... ;

          System.out.println("a=" + a + ", b=" + b);
    }
}

上のプログラムが正しく動くように完成させなさい。

埋めるべき欄 (.....) には変数名を書くこと。 必要な部分を記述しコンパイル・実行したとき、 a=8, b=2 のように表示されれば良い。