しばらくは、mainメソッドの内部だけ、つまり下記で赤で書いた部分だけを考えていきます。ただし青の部分はファイル名の .java をのぞいた部分とあわせなければなりません。
public class Keisan {
public static void main( String[] args ) {
命令文1;
命令文2;
}
}
命令文の最後にかならずセミコロン( ; )が必要なところは注意しておきましょう。
加減乗除の演算を,それぞれ,+,-,*,/で表します。
つぎの計算をさせてみます。
30×5
次のように入力します。
public class Keisan { public static void main( String[] args ) { System.out.println( 30 * 5 ); } }
コンソールで次のように入力し、最後に[Enter]をおします。
$ javac Keisan.java
実行は次のようにします。
$ java Keisan 150 $
30 × 5 = 150 などと表示するには次のようにします。
public class Keisan2 { public static void main( String[] args ) { System.out.print( "30 × 5 = " ); System.out.println( 30 * 5 ); } }
1つめに、println でなく print を使っていることに注意してください。2つの使い方は同じですが、println が表示の後改行をするのに対して、print の方は改行しません。
System.out.print( "30 × 5 = " )の部分は "こんにちは みなさん" と同じです。javaはこれを計算しません。次の行の 30*5 の計算をしてその結果を println が表示します。
別のやり方もありますが、現段階ではこれでいきましょう。
結果が小数部分を含む数になる計算では正しい答にならないことがあります。たとえば、
30÷4×5
は、37.5が正解ですが、35になってしまいます。これは、30÷4の計算の時に、30も4も整数なので、答えも整数にするために小数点以下を切り捨てたのです。
次のようにすればうまくいきます。
public class Keisan3 { public static void main( String[] args ) { System.out.print( "30 ÷ 4 × 5 = " ); System.out.println( 30.0 / 4 * 5 ); } }
30.0 とすることで、java は30が整数でない(小数部分も考える)ことを理解します。そこで小数部分まで計算するのです。答が小数部分まである数値になりますので、それに5をかけるときもやはり小数部分まで計算し、表示も小数部分まで表示します。
次の理由はわかるでしょうか、
System.out.println( 30 / 4.0 * 5 ); //37.5になります System.out.println( 30 / 4 * 5.0 ); //35になります
次の計算をするプログラムをつくりなさい。
120 + 42 を計算して、120 + 42 = 162 と表示するプログラム。
50 ÷ 3 を計算して、50 ÷ 3 = ???? と表示するプログラム。
????はできるだけ正確な数値になるようにします。
(1) 50+2×10 (2) (50+2)×10
の二つを計算して、
(1) 50+2×10 = ???? (2) (50+2)×10 = ????
と表示するプログラム。
(1) 12+34 (2) 2×3 (3) 20÷4×3 (4) 1÷3×3 (5) 53
を計算して、Keisan6と同様に表示するプログラム。
(5) はちょっと工夫が必要です。javaには累乗を示す記号がありません。
5 * 5 * 5
を使いましょう。53 の表示も 5*5*5 でOKです。
計算で掛け算に書き直せないときは次の書き方ができます。Mathは数学,powはpower(累乗)からきています。
Math.pow( 5, 3 )
今回はこれを使わなくてもできます。