勉強法変更!
ちょっとうぬぼれかもしれないけど、Javaプログラミングについては、方法としてはあらかたできるようになったからもうちょっと省いて書くことにしよう。その代わりスピードアップ!
今日やったプログラムはMathクラス。以下は縦と横の2辺の長さが与えられた時の斜辺の長さを求めるプログラム。
import java.io.*; public class May25n1 { public static void main(String[] args) throws IOException { System.out.println("数を2つ入力してください。"); BufferedReader br= new BufferedReader(new InputStreamReader(System.in)); String str1 = br.readLine(); String str2 = br.readLine(); double tate1 = Double.parseDouble(str1); double yoko1 = Double.parseDouble(str2); double tate2 = Math.pow(tate1, 2); double yoko2 = Math.pow(yoko1, 2); double shahen = Math.sqrt(tate2+yoko2); System.out.println("縦の長さ"+tate1+"、横の長さ"+yoko1+ "の三角形の斜辺の長さは"+shahen); } }
出力結果:
数を2つ入力してください。
3
4
縦の長さ3.0、横の長さ4.0の三角形の斜辺の長さは5.0
double tate2 = Math.pow(tate1, 2);
これはtake1の数に2を累乗して、double型の変数tate2に代入している。
double shahen = Math.sqrt(tate2+yoko2);
これは変数tate2とyoko2を足した数の平方根を、double型の変数shahenに代入している。
つまり、求めたい結果の斜辺の長さを求めてshahenに格納している。
そして最後に
System.out.println("縦の長さ"+tate1+"、横の長さ"+yoko1+ "の三角形の斜辺の長さは"+shahen);
で結果を表示している。
他にもsin,cosの値を返す
Math.sin(double x); Math.cos(double y);
2つの引数のうち大きい方¥小さい方の値を返す
Math.max(double x, double y); Math.min(double x, double y);
などを学びました。これで数学的操作が簡単になります。特に累乗を使った演算はこれでできるようになりました。たとえば・・・、円の面積やe(ネピアの数)のテーラー展開による近似値なども求められそう。今度やってみることにしよう。