Langley(ラングレー)の問題を三角関数で解くときに、定数部分Qの式変形に役に立ちそうな公式集を生成するプログラムをJavaで作ってみました。(^_^;
ちなみに、4x系は、2x系を2回使っても出るようです。(^_^;
●GenTriFormula01.java
/* * GenTriFormula01.java * * //--- 2x系 ---// * sin[2x]=2sin[x]*sin[90゚-x] * * //--- 3x系 ---// * sin[3x]=4sin[x]sin[60゚- x]sin[60゚+x] * * //--- 4x系1 ---// * sin[4x]=4sin[x]sin[90゚-2x]sin[90゚-x] * * //--- 4x系2 ---// * sin[4x]=4sin[2x]sin[45゚-x]sin[45゚+x] * */ import java.util.Arrays; public class GenTriFormula01 { public static void main(String[] args) { int[] a = new int[4]; int dx=5; System.out.println("//--- 2x系 ---//"); for(int x=0; 2*x<=90; x+=dx){ a[0]=2*x; a[1]=x; a[2]=90-x; for(int i=0; i< 3; i++) if(a[i]> 90) a[i]=180-a[i]; Arrays.sort(a,1,2); if((a[0]-a[1])*(a[0]-a[2])==0) continue; System.out.printf("sin[%2d]=2*sin[%2d]*sin[%2d]\n",a[0],a[1],a[2]); } System.out.println("//--- 3x系 ---//"); for(int x=0; 3*x<=90; x+=dx){ a[0]=3*x; a[1]=x; a[2]=60-x; a[3]=60+x; for(int i=0; i< 4; i++) if(a[i]> 90) a[i]=180-a[i]; Arrays.sort(a,1,3); if((a[0]-a[1])*(a[0]-a[2])*(a[0]-a[3])==0) continue; System.out.printf("sin[%2d]=4*sin[%2d]*sin[%2d]*sin[%2d]\n",a[0],a[1],a[2],a[3]); } System.out.println("//--- 4x系1 ---//"); for(int x=0; 4*x<=90; x+=dx){ a[0]=4*x; a[1]=x; a[2]=90-2*x; a[3]=90-x; for(int i=0; i< 4; i++) if(a[i]> 90) a[i]=180-a[i]; Arrays.sort(a,1,3); if((a[0]-a[1])*(a[0]-a[2])*(a[0]-a[3])==0) continue; System.out.printf("sin[%2d]=4*sin[%2d]*sin[%2d]*sin[%2d]\n",a[0],a[1],a[2],a[3]); } System.out.println("//--- 4x系2 ---//"); for(int x=0; 4*x<=90; x+=dx){ a[0]=4*x; a[1]=2*x; a[2]=45-x; a[3]=45+x; for(int i=0; i< 4; i++) if(a[i]> 90) a[i]=180-a[i]; Arrays.sort(a,1,3); if((a[0]-a[1])*(a[0]-a[2])*(a[0]-a[3])==0) continue; System.out.printf("sin[%2d]=4*sin[%2d]*sin[%2d]*sin[%2d]\n",a[0],a[1],a[2],a[3]); } } }
●実行結果
//--- 2x系 ---// sin[10]=2*sin[ 5]*sin[85] sin[20]=2*sin[10]*sin[80] sin[30]=2*sin[15]*sin[75] sin[40]=2*sin[20]*sin[70] sin[50]=2*sin[25]*sin[65] sin[70]=2*sin[35]*sin[55] sin[80]=2*sin[40]*sin[50] sin[90]=2*sin[45]*sin[45] //--- 3x系 ---// sin[15]=4*sin[ 5]*sin[55]*sin[65] sin[30]=4*sin[10]*sin[50]*sin[70] sin[60]=4*sin[20]*sin[40]*sin[80] sin[75]=4*sin[25]*sin[35]*sin[85] //--- 4x系1 ---// sin[20]=4*sin[ 5]*sin[80]*sin[85] sin[40]=4*sin[10]*sin[70]*sin[80] sin[80]=4*sin[20]*sin[50]*sin[70] //--- 4x系2 ---// sin[20]=4*sin[10]*sin[40]*sin[50] sin[40]=4*sin[20]*sin[35]*sin[55] sin[80]=4*sin[25]*sin[40]*sin[65]
- 作者: 柴田望洋
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2007/08/08
- メディア: 単行本
- 購入: 16人 クリック: 271回
- この商品を含むブログ (55件) を見る
- 作者: 矢野健太郎,春日正文
- 出版社/メーカー: 科学新興新社
- 発売日: 1998/07/01
- メディア: 単行本
- 購入: 11人 クリック: 55回
- この商品を含むブログ (11件) を見る