今までのJavaの課題
http://d.hatena.ne.jp/suehiro3721p/20041030#java
http://d.hatena.ne.jp/suehiro3721p/20041106#java
http://d.hatena.ne.jp/suehiro3721p/20041113#java
課題1 8進数表示
xDrvDspOct を実行すると,000377 と表示されます。これを,377 と表示するようにしなさい。
以下のプログラムをそのまま,コンパイルをして実行して,"000377"となることを確認する。
次ぎに,xDrvDspOct01.java として,static void xDspOct の中を修正すること
class xDrvDspOct {
public static void main(String[] args) {xDspOct(255);
}static void xDspOct(int x){
int xomomi = 8*8*8*8*8;
int d;
do {
d = x / xomomi;
System.out.print(d);
x = x % xomomi;
xomomi = xomomi / 8;
}while(xomomi > 0);
}
}
ヒント
表示するかどうかの判断をする変数*1を使います。
do の上に,
boolean xisDsp = false; // 表示(display)するかどうか
表示を開始する判断は,
xisDsp が false で,d > 0 となった桁から下の桁
if (!xisDsp && (d > 0) { xisDsp = true; }
表示するかどうかは,
if (xisDsp) { System.out.println(d); }
課題2 16 進数表示
整数を16進数で表示するメソッドを作成しなさい。
ファイル名 xDrvDspHex.java
メソッド名 static void xDspHex(int x)
課題3 2 進数表示
整数を2進数で表示するメソッドを作成しなさい。4桁表示ごとに半角スペースを入れること
ファイル名 xDrvDspBin.java
メソッド名 xDspBin(int x)
課題4 10-2-8-16進数対応表表示
10, 2, 8, 16進対応表を表示しなさい。
10 2 8 16
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
1 | 0001 1 1
2 | 0002 2 2
3 | ………………
4 | …
5 | …
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | …
16 | 1 0000 20 10
*1:このようは変数をフラグ(=旗)といいます