プログラミング2
課題3

INDEX
課題3詳細
作成したソース
出力結果
考察
感想
参考文献など

課題3詳細

Report#3 Javaの文法解説I{〜11/15(Mon)}
     講義資料を参考に、その範囲のJavaの基礎的な文法について教科書と対応させながら解説し、考察せよ

INDEXへ戻ります?


作成したソース

/**********************************************************
 Program            :Repo3.java
 Date               :'04/11/13
 Wrote by           :Yusuke Uehara
 about this Program :Javaの基礎を説明するためのソース
***********************************************************
public class Repo3 {
    public static void main(String args[]) {

        System.out.println("コメント");
        hello();                           //スレッドの呼び出し

        System.out.println("\n\n文字列出力");
        moji();

        System.out.println("\n\n変数宣言と数値出力");
        suuji();

        System.out.println("\n\n繰り返し処理");
        keisann();

        System.out.println("\n\n基本データ型の性質");
        data();

        System.out.println("\n\nwhile文とif文を用いた条件処理");
        joukenn();
    }


    public static void /*これもコメントです*/hello() {
        System.out.println("Hi! Welcome 2 Java World!");  //出力するメッセージ
    }


    public static void moji() {
        System.out.print("AaAaA");
        System.out.print("bBbBb\nCcC\n");
        System.out.println("DDD");
        System.out.println("EEEE\nFFFF\nGGG");
    }


    public static void suuji() {
        int a, b, sumomo;

        a = 100;
        b = 200;
        sumomo = (a + b) / a;
        System.out.print("a = ");
        System.out.println(a);

        System.out.println("b = "+ b);

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

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


    public static void keisann() {
        int i, j, sumo;

        sumo = 10;
        for(i = 1 ; i <= 5 ; i++) {
            sumo = sumo - i;
            System.out.println("sumo = "+ sumo);
        }
    }
    
    public static void data() {
        char c;
        boolean b;
        byte b2;
        short s;
        int i;
        long l;
        float f;
        double d;

        c = 'Z';
        System.out.println("char型宣言の変数 c= " + c );

        b = false;
        System.out.println("boolean型宣言の変数 b= " + b );

        b2 = 34;
        System.out.println("byte型宣言の変数 b2= " + b2);

        s = 327;
        System.out.println("short型宣言の変数 s= " + s );

        i = 21647;
        System.out.println("int型宣言の変数 i= " + i );

        l = 922324359843l;
        System.out.println("long型宣言の変数 l= " + l );

        f = .3333f;
        System.out.println("float型宣言の変数の表現可能な値 f= " + f );

        d = 0.003333E2d;
        System.out.println("double型宣言の変数の表現可能な値 d= " + d );
    }

    public static void joukenn() {
        int i, j, k, l;
        i = 1;
        j = 5;
        k = 0;
        System.out.println("5に1を数回足していきます。");
        while( k < 11 ) {
            l = j;
            j = j + i;
            k = k + 1;
            System.out.println("--演算\""+ k + "\"回目--");
            System.out.print(l + "+" + i + "=" + j);
            
            if ( j>=5 && j<=7 )
                System.out.println("\"" + j + "\"は5以上かつ7以下");
            else if ( j<8 || j>12 )
                  System.out.println("\"" + j + "\"は8未満または12より大");
            else if ( (j!=11 || j!=14) )
                  System.out.println("\"" + j + "\"は11または14ではない。");
        }
    }
}

INDEXへ戻ります?


出力結果

[nw0411:~/prog2/report03] J04011% javac -encoding euc-jp Repo3.java |& nkf -e
[nw0411: ̄/prog2/report03] J04011% java Repo
コメント
Hi! Welcome 2 Java World!


文字列出力
AaAaAbBbBb
CcC
DDD
EEEE
FFFF
GGG


変数宣言と数値出力
a = 100
b = 200
a + b = 300
(a + b) / a = 3


繰り返し処理
sumo = 9
sumo = 7
sumo = 4
sumo = 0
sumo = -5


基本データ型の性質
char型宣言の変数 c= Z
boolean型宣言の変数 b= false
byte型宣言の変数 b2= 34
short型宣言の変数 s= 327
int型宣言の変数 i= 21647
long型宣言の変数 l= 922324359843
float型宣言の変数の表現可能な値 f= 0.3333
double型宣言の変数の表現可能な値 d= 0.3333


while文とif文を用いた条件処理
5に1を数回足していきます。
--演算"1"回目--
5+1=6"6"は5以上かつ7以下
"6"は8未満または12より大
"6"は11または14ではない。
--演算"2"回目--
6+1=7"7"は5以上かつ7以下
"7"は8未満または12より大
"7"は11または14ではない。
--演算"3"回目--
7+1=8"8"は11または14ではない。
--演算"4"回目--
8+1=9"9"は11または14ではない。
--演算"5"回目--
9+1=10"10"は11または14ではない。
--演算"6"回目--
10+1=11"11"は11または14ではない。
--演算"7"回目--
11+1=12"12"は11または14ではない。
--演算"8"回目--
12+1=13"13"は8未満または12より大
"13"は11または14ではない。
--演算"9"回目--
13+1=14"14"は8未満または12より大
"14"は11または14ではない。
--演算"10"回目--
14+1=15"15"は8未満または12より大
"15"は11または14ではない。
--演算"11"回目--
15+1=16"16"は8未満または12より大
"16"は11または14ではない。

INDEXへ戻ります?


考察

  1. コメントについて --hello()--

  2. 文字列出力について --moji()--


  3. 変数宣言と数値出力について --suuji()--

  4. for文を用いた演算処理について 〜教科書P112→113〜

  5. 基本データ型の性質について 〜教科書P12→17〜
     型 
     説明 
     格納できるデータ 
     char 
    16ビット(2バイト)Unicodeキャラクタデータ1つのUnicode文字
     boolean 
    真偽値true(真)もしくはfalse(偽)
     byte 
    8ビット(1バイト)符号付き整数-2の7乗〜2の7乗-1(-128〜127)
     short 
    16ビット(2バイト)符号付き整数-2の15乗〜2の15乗-1(-32768〜32767)
     int 
    32ビット(4バイト)符号付き整数-2の31乗〜2の31乗-1(-2147483648〜2147483647)
     long 
    64ビット(8バイト)符号付き整数-2の63乗〜2の63乗-1(-9223372036854775808〜9223372036854775807)
     float 
    32ビット(4バイト)符号付き浮動小数点数
     double 
    64ビット(8バイト)符号付き浮動小数点数
     宣言方法 
     例 
     [変数の型] = [任意の変数の名前];
     [任意の変数の名前] = [格納したい値]; 
     int i; 
     i = 32;
     [変数の型] [任意の変数の名前] = [格納したい値]; int i = 32;
  6. while文とif文について 〜教科書P108→111、P114→115〜
  7. Javaで使用できる関係演算子と論理演算子について 〜教科書P100→103〜
     演算子 
     意味 
    説明
     & 
    論理積ANDともいい、2つの項が真のときにだけ結果が真となる論理演算。
     | 
    論理和ORともいい、2つの項が偽のときにだけ結果が偽になる論理演算。
     ^ 
    排他的論理和Exclusive ORともいい、項の真偽が逆になる論理演算。
     && 
    論理積(ショートカット)
     || 
    論理和(ショートカット)
     == 
    等しい
     != 
    等しくない

INDEXへ戻ります?


感想

今回のレポートは今までのものと違い、考察の方法が難しかったです。
今回からhtmlで表を使うことやら、ソースを仕上げたりするのに相当時間をかけてしまい、苦しい結果となりました。 次回からは余裕のあるレポート作りを目指していきたいです。

INDEXへ戻ります?


参考文献など

独習Java 第2版

INDEXへ戻ります?


ひとつ前の画面に戻ります? homeに戻ります?