2022.09.24

Javaプログラミング

三角関数表の作成 その1

角度0°から90°のサイン(sin)、コサイン(cos)の表を作成するJavaソースコードを紹介します。

 0 0.00000 1.00000
 1 0.01745 0.99985
 2 0.03490 0.99939
 3 0.05234 0.99863
 4 0.06976 0.99756
 5 0.08716 0.99619
 6 0.10453 0.99452
 7 0.12187 0.99255
       :
88 0.99939 0.03490
89 0.99985 0.01745
90 1.00000 0.00000

Javaソースコード

TriFuncTable1.java

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
public class TriFuncTable1 {
	public static void main( String[] args ) {
		// 0~90度のsin、cosを出力
		for ( int deg = 0; deg <= 90; deg ++ ) {
			// 角度degをラジアンradに変換
			double rad = Math.toRadians(  (double)deg );

			// 角度とsinとcosを出力
			System.out.printf( "%2d%8.5f%8.5f", deg, Math.sin( rad  ), Math.cos( rad  ) );

			// 改行
			System.out.println();
		}
	}
}

実行結果

コンパイル ソースコードが「ANSI」の場合

C:\talavax\javasample>javac -encoding sjis TriFuncTable1.java

コンパイル ソースコードが「UTF-8」の場合

C:\talavax\javasample>javac TriFuncTable1.java

実行

C:\talavax\javasample>java TriFuncTable1

出力結果

 0 0.00000 1.00000
 1 0.01745 0.99985
 2 0.03490 0.99939
 3 0.05234 0.99863
 4 0.06976 0.99756
 5 0.08716 0.99619
 6 0.10453 0.99452
 7 0.12187 0.99255
 8 0.13917 0.99027
 9 0.15643 0.98769
10 0.17365 0.98481
11 0.19081 0.98163
12 0.20791 0.97815
13 0.22495 0.97437
14 0.24192 0.97030
15 0.25882 0.96593
16 0.27564 0.96126
17 0.29237 0.95630
18 0.30902 0.95106
19 0.32557 0.94552
20 0.34202 0.93969
21 0.35837 0.93358
22 0.37461 0.92718
23 0.39073 0.92050
24 0.40674 0.91355
25 0.42262 0.90631
26 0.43837 0.89879
27 0.45399 0.89101
28 0.46947 0.88295
29 0.48481 0.87462
30 0.50000 0.86603
31 0.51504 0.85717
32 0.52992 0.84805
33 0.54464 0.83867
34 0.55919 0.82904
35 0.57358 0.81915
36 0.58779 0.80902
37 0.60182 0.79864
38 0.61566 0.78801
39 0.62932 0.77715
40 0.64279 0.76604
41 0.65606 0.75471
42 0.66913 0.74314
43 0.68200 0.73135
44 0.69466 0.71934
45 0.70711 0.70711
46 0.71934 0.69466
47 0.73135 0.68200
48 0.74314 0.66913
49 0.75471 0.65606
50 0.76604 0.64279
51 0.77715 0.62932
52 0.78801 0.61566
53 0.79864 0.60182
54 0.80902 0.58779
55 0.81915 0.57358
56 0.82904 0.55919
57 0.83867 0.54464
58 0.84805 0.52992
59 0.85717 0.51504
60 0.86603 0.50000
61 0.87462 0.48481
62 0.88295 0.46947
63 0.89101 0.45399
64 0.89879 0.43837
65 0.90631 0.42262
66 0.91355 0.40674
67 0.92050 0.39073
68 0.92718 0.37461
69 0.93358 0.35837
70 0.93969 0.34202
71 0.94552 0.32557
72 0.95106 0.30902
73 0.95630 0.29237
74 0.96126 0.27564
75 0.96593 0.25882
76 0.97030 0.24192
77 0.97437 0.22495
78 0.97815 0.20791
79 0.98163 0.19081
80 0.98481 0.17365
81 0.98769 0.15643
82 0.99027 0.13917
83 0.99255 0.12187
84 0.99452 0.10453
85 0.99619 0.08716
86 0.99756 0.06976
87 0.99863 0.05234
88 0.99939 0.03490
89 0.99985 0.01745
90 1.00000 0.00000

Javaソースコードの解説

001
public class TriFuncTable1 {

クラス名を、TriFuncTable1としています。

002
	public static void main( String[] args ) {

このmainメソッドからプログラムを実行します。

003
004
		// 0~90度のsin、cosを出力
		for ( int deg = 0; deg <= 90; deg ++ ) {

for文int型変数degを0から90まで1ずつ変化させるループを作成しています。

006
			double rad = Math.toRadians(  (double)deg );

角度を表す変数degをラジアンに変換した値を変数rad代入しています。

Math.toRadiansメソッド

public static double Math.toRadians( double a )
・引数aで指定した角度をラジアンに変換した値を返します。

  パラメータ a : 角度(単位:度)[

  戻り値    ラジアン
008
009
			// 角度とsinとcosを出力
			System.out.printf( "%2d%8.5f%8.5f", deg, Math.sin( rad  ), Math.cos( rad  ) );

変数deg、Math.sin( rad )、Math.sin( rad )の値の桁を揃えて出力するために、printfメソッドで書式を指定しています。

書式"%2d%8.5f%8.5f"%2dは「整数を最小桁数2桁」で出力することを表しています。1桁の整数は、半角スペース付の右詰になります。2桁以上の整数は、そのままの桁数で出力されます。%8.5fは「小数を最小桁数8桁、小数部5桁」で出力することを表しています。整数部が1桁の場合、整数部1桁+小数点'.'+小数部5桁の合計7桁を半角スペース付の右詰で出力します。

Math.sinメソッド

public static double Math.sin( double a )
・引数aで指定した角度の正弦 (サイン) を返します。

  パラメータ a : ラジアンで指定した角度。

  戻り値    aの正弦

Math.cosメソッド

public static double Math.cos( double a )
・引数aで指定した角度の余弦 (コサイン) を返します。

  パラメータ a : ラジアンで指定した角度。

  戻り値    aの余弦
011
012
			// 改行
			System.out.println();

改行しています。

以上です。

関連コンテンツ

Javaの学習に役立つソースコードを多数紹介しています。是非、ご覧ください。

2022.09.10

sin(サイン)の意味と、Math.sinメソッドの使い方をソースコードを使って詳しく解説しています。

2020.03.23

cos(コサイン)の意味と、Math.cosメソッドの使い方をソースコードを使って詳しく解説しています。

2020.03.23

tan(タンジェント)の意味と、Math.tanメソッドの使い方を解説しています。

2020.03.23

平方(二乗)の表を作成するJavaソースコードを紹介。

2022.10.03

0から90°のsin(x)、sin(x)、tan(x)の表を作成する方法をソースコードを使って詳しく解説しています。

2022.09.24

0から359°のsin(x)、sin(x)、tan(x)の表を作成する方法をソースコードを使って詳しく解説しています。

2022.09.24

数学に関係するJavaのメソッドやソースコードなどを紹介しています。

2022.10.25

Swingパッケージを使って数式のグラフを表示する方法を解説します。サイン(sin)カーブを表示するJavaソースコードを紹介しています。

2019.09.14

Swingパッケージを使ってコサイン(cos)のグラフを表示するJavaソースコードを紹介しています。

2019.09.21

Swingパッケージを使ってタンジェント(tan)のグラフを表示するJavaソースコードを紹介しています。

2019.09.21

変数やクラスに格納されている値をフォーマとを指定してコンソール出力する方法は?

2021.08.04

変数やクラスに格納されている値をコンソール出力する方法は?

2020.03.23

プログラムの最初に実行されるメソッドは?

2022.12.13

プログラミングで使う変数って何?

2020.03.23

Javaのプログラムを書いてみませんか?プログラムの書き方をくわしく説明しています。

2020.03.23

「Javaソースコード」から実行可能な「オブジェクトコード」に変換する方法をくわしく説明しています。

2020.03.23

Javaのプログラムを作ってみませんか?プログラミングに必要なものの用意から実行までを説明しています。

2020.03.23

Swingパッケージを使ってグラフィック表示を行う方法を解説しています。

2020.03.23

画像フォーマット形式・色・大きさ・傾きなどの変更、特定の図形(文字・記号など)を見つけたり、取り出したりする画像処理について詳しく解説。

2015.11.29

繰り返し処理を使ったJavaのソースコードサンプルを紹介しています。

2020.03.23

配列を使うJavaソースコードを多数紹介しています。

2021.05.18

三角形、台形、円などいろいろな図形の面積を計算するプログラムを紹介しています。詳しくは、記事をご覧ください。

2021.05.18

StringクラスとStringBuilderクラスを利用したプログラミングの仕方を紹介しています。

2016.12.16

Javaを使った簡単な応用プログラム(生年月日から年齢を計算プログラムなど)を紹介しています。

2022.07.07

プログラミング、ITに関する用語をまとめています。

2022.10.17

日本で使われてきた伝統文様「和柄」について解説しています。

2022.07.27

プログラミング言語とは?種類や特徴について説明しています。

2022.08.03

国際単位系における角度の単位のラジアンについて説明しています。興味のある方は、記事をご覧ください。

2016.01.26

Javaプログラムの構成について解説しています。詳しくは、こちらをご覧ください。

2020.03.23

処理を繰り返すために使用するfor文について解説しています。

2020.03.23

繰り返し処理の作り方を解説しています。

2016.03.02

メソッドの定義方法を詳しく解説しています。Javaのサンプルソースコードを使った説明もあります。

2020.03.23

複数の数値の合計値と平均値を計算するプログラムをJavaのソースコードを使って解説しています。

2020.03.23

自然数と整数って何が違う?

2020.03.23

文字列の途中で改行する方法って?詳しくは、記事を。

2021.02.02

「ゆるゆるプログラム」のコンテンツを紹介しています。興味のある方はこの記事をご覧ください。

2020.03.23

広告