第2週:入力と計算


2. 1 文字列の入力
2. 2 数値の入力
2. 3 練習問題
2. 4 図形の出力
2. 5 練習問題
2. 6 図形を描くメソッド
2. 7 
2. 8 練習問題
2. 9 宿題

2.1 文字列の入力

先週のプログラムは、実行させると常に同じ結果が出力されます。今度は、デー タを入力し、それを基にして計算した結果を出力するようにしてみましょう。

先週の HelloWorld.java を改造し、名前を入力すると、その人 に挨拶するようにしましょう。プログラムは次のように書き換えます。
class HelloWorld extends SfcDoNothing {
    String s;
    void sfcProcess () {
	s = sfcInput();
	sfcOutput("Hello, " + s + "!");
    }
}

HelloWorld.java をコンパイルし直して、実行します。自分の名 前を入力して、Process をクリックしてみましょう。

2.2 数値の入力

今度は数値を入力して計算するプログラムを考えましょう。アメリカドルの金 額を入力し、それを日本円に直すプログラムを作ります。 ForeignExchange.java というファイルに以下の内容を書き込みましょ う。
class ForeignExchange extends SfcDoNothing {
    int dollar, yen;
    void sfcProcess () {
	dollar = Integer.parseInt(sfcInput());
	yen = dollar * 106;
	sfcOutput(Integer.toString(yen));
    }
}

2.3 練習問題

2.4 図形の出力

数値や文字だけでなく、図形の形で出力することもできます。

それでは直線を描いてみましょう。Line.java というファイルを作 ります。
import java.awt.*;
class Line extends SfcDoNothing {
    void sfcDraw (Graphics g) {
	g.drawLine(25,25,200,200);
    }
}

これをコンパイルして実行してみましょう。
% java SfcExample2 Line
Draw ボタンをクリックすると、直線が描かれます。

2.5 練習問題

2.6 図形を描くメソッド

Graphics クラスには drawLine などの図形を描くメソッ ドがたくさん用意されています。

2.7 色

きれいな色を使って図形を描くこともできます。Colorful.java を 次のように作りましょう。
import java.awt.*;
class Colorful extends SfcDoNothing {
    void sfcDraw (Graphics g) {
	g.setColor(Color.red);
	g.fillOval(50, 50, 100, 200);
    }
}

2.8 練習問題

違う色で塗り潰した2つの楕円を、一部が重なるように描いてみましょう。重 なった部分は何色になりますか?

2.9 宿題

  1. 現在表示されている数値に、入力した数値を加えていく加算器のプログラムを 作りなさい。
  2. 図形を組み合わせて、人の顔を描くプログラムを作りなさい。
  3. (150, 150)を中心とし、入力した数値を半径とする円を描くプログラムを作り なさい。

慶應義塾大学の授業以外での無断利用、複製はご遠慮下さい。
Copyright (c) 1999 慶應義塾大学