ETH官方钱包

切換
舊版
前往
大廳
主題

Java Programming Lesson 02

ジャネス | 2011-07-29 17:18:21 | 巴幣 0 | 人氣 377

第02章:計算をやってみよう

Javaの加減乗除
加算:足し算(+)
減算:引き算(-)
乗算:掛け算(×)
除算:割り算(÷)

算數での記號 → Javaの記號
  +    →   +
  -    →   - 
  ×    →   *
  ÷    →   /

算數の式 → Javaの算式
 3+2  →  3 + 2
 5-8  →  5 - 8
 3×4  →  3 * 4
 7÷3  →  7 / 3

Java Program

Calc1.java(加減乗除を行うプログラム)
----------
public class Calc1 {
  public static void main(String[] args) {
    System.out.println("加算の結果は" + (3 + 2) + "です。");
    System.out.println("減算の結果は" + (5 - 8) + "です。");
    System.out.println("乗算の結果は" + (3 * 4) + "です。");
    System.out.println("除算の結果は" + (7 / 3) + "です。");
  }
}
----------
畫面に
javac Calc1.java
java Calc1
加算の結果は5です。
減算の結果は-3です。
乗算の結果は12です。
除算の結果は2です。
----------

整數の演算

演算 算數          JAVA
-- ----------- --------
加算 整數+整數=整數    整數+整數=整數
減算 整數-整數=整數    整數-整數=整數
乗算 整數×整數=整數    整數×整數=整數
除算 整數÷整數=整數か小數 整數÷整數=整數(*)
-- ----------- --------

*Javaの整數除算は割り切れなかった小數部分は切り捨てられる

數式と優先順位
。+ や - よりも、* や / のほうを先に行う
。同じ優先順位を持った演算子は左から順番に計算
 12 + 34 + 56 + 78 → ((12 + 34) + 56) + 78
。代入演算子は、右から順番に計算
 a = b = c = d → a = (b = (c = d))

Calc2.java(複雑な計算)
----------
public class Calc2 {
  public static void main(String[] args) {
    System.out.println(1 + 2 * 3 - 4 / 2);
  }
}
----------
畫面に
javac Calc2.java
java Calc2
5
----------

整數で表すことのできる範囲
型名  最小値        最大値       解説
--- ---------- --------- --------
byte  -128         127         符號付き8ビット
short  -32768        32767        符號付き16ビット
int   -2147483648      2147483647     符號付き32ビット
long  -9223372036854775808 922332036854775807 符號付き64ビット
char  0           65535        符號なし16ビット
--- ---------- --------- --------

その他の計算
演算子    例
------ --------
ビット演算子 & | ^ ~
論理演算子  ! && ||
関係演算子  == != < > <= >=
シフト演算子 >> << >>>
------ --------

Calc1a.java(printfメソッドの例)
----------
public class Calc1a {
  public static void main(String[] args) {
    System.out.printf("加算の結果は%dです。%n", 3 + 2");
    System.out.printf("減算の結果は%dです。%n", 5 + 8");
    System.out.printf("乗算の結果は%dです。%n", 3 * 4");
    System.out.printf("除算の結果は%dです。%n", 7 / 3");
  }
}
----------
畫面に
javac Calc1a.java
java Calc1a
加算の結果は5です。
減算の結果は-3です。
乗算の結果は12です。
除算の結果は2です。
----------

練習問題2-2

CalcTable1.java(計算プログラム)
----------
public class CalcTable1 {
  public static void main(String[] args) {
    System.out.println("0 × 0 = " + (0 * 0));
    System.out.println("1 × 1 = " + (1 * 1));
    System.out.println("2 × 2 = " + (2 * 2));
    System.out.println("3 × 3 = " + (3 * 3));
    System.out.println("4 × 4 = " + (4 * 4));
    System.out.println("5 × 5 = " + (5 * 5));
    System.out.println("6 × 6 = " + (6 * 6));
    System.out.println("7 × 7 = " + (7 * 7));
    System.out.println("8 × 8 = " + (8 * 8));
    System.out.println("9 × 9 = " + (9 * 9));
    System.out.println("10 × 10 = " + (10 * 10));
  }
}
----------
畫面に
javac CalcTable1.java
java CalcTable
0
1
4
9
16
25
36
49
64
81
100
----------

CalcTable2.java(計算プログラム)
----------
public class CalcTable2 {
  public static void main(String[] args) {
    for (int i = 0; i <= 10; i++) {
      System.out.println(i + " × " + i + " = " + (i * i));
    }
  }
}
----------
畫面に
javac CalcTable2.java
java CalcTable2
0 × 0 = 0
1 × 1 = 1
2 × 2 = 4
3 × 3 = 9
4 × 4 = 16
5 × 5 = 25
6 × 6 = 36
7 × 7 = 49
8 × 8 = 64
9 × 9 = 81
10 × 10 = 100
----------

CalcTable3.java (計算プログラム、printfメソッドを使った)
----------
public class CalcTable3 {
  public static void main(String[] args) {
    for (int i = 0; i <= 10; i++) {
      System.out.printf("%d × %d = %d%n", i, i, i * i);
    }
  }
}
----------
畫面に
javac CalcTable3.java
java CalcTable3
0 × 0 = 0
1 × 1 = 1
2 × 2 = 4
3 × 3 = 9
4 × 4 = 16
5 × 5 = 25
6 × 6 = 36
7 × 7 = 49
8 × 8 = 64
9 × 9 = 81
10 × 10 = 100
----------

練習問題2-3

Daikei1.java(臺形の面積を求めるプログラム)
----------
public class Daikei1 {
  public static void main(String[] args) {
    System.out.println((2 + 3) * 4 / 2);
  }
}
----------
畫面に
javac Daikei1.java
java Daikei1
10
----------

Daikei2.java(臺形の面積を求めるプログラム、第8章で學ぶメソッドで)
----------
public class Daikei2 {
  public static void main(String[] args) {
    System.out.println(daikei(2, 3, 4));
  }
  public static int daikei(int a, int b, int h) {
    return (a + b) * h / 2;
  }
}
----------
畫面に
javac Daikei2.java
java Daikei2
10
----------

練習問題2-4

CalcBig.java(オーバーフロー)
----------
public class CalcBig {
  public static void main(String[] args) {
    System.out.println(10000L * 10000L);
  }
}
----------
畫面に
javac CalcBig.java
java CalcBig
100000000
----------

學んだこと
。計算
。Java言語の式の表現
。演算子の優先順位
。+が數の計算だけではなく、文字列の連結に使える

創作回應

相關創作

更多創作