次の2次方程式を解きなさい 1. x2 - 8x + 9 =0 2. x2 +16x + 58 =0 3. x2 -10x + 1 =0 4 x2 +28x +142 =0 5. 3x2 -30x + 51 =0 6. 4x2 +24x + 28 =0 7. x2 - 1x - 1 =0 8. 9x2 +18x + 2 =0 9. 2x2 - 8x + 5 =0 10. 4x2 +12x + 7 =0 11. 12x2 -48x + 39 =0 12. 9x2 +24x + 10 =0 13. 6x2 -24x + 21 =0 14. 8x2 +20x - 1 =0 15. 9x2 - 4x - 1 =0 16. 12x2 + 2x - 7 =0
//Sample23_10.java class Sample23_10 { /*素数*/ static int[] primeNums = {2, 3, 5, 7, 11, 13}; static double[] method_04(double a, double b, double c){ /*各パートの計算*/ double[] ans = {(2*a) , -b , (b*b-4*a*c)}; return ans; } static double[] reduce(double[] ans){ /*約分*/ for(int i=0; i< primeNums.length; i++){ if(ans[0] >= primeNums[i]){ while( ans[0]%primeNums[i] == 0 && ans[1]%primeNums[i] == 0 && ans[2]%(primeNums[i]*primeNums[i]) == 0 ){ ans[0]/=primeNums[i]; ans[1]/=primeNums[i]; ans[2]/=(primeNums[i]*primeNums[i]); } } } return ans; } static void printAnswer(double[] ans){ /*答えの表示*/ double partA = ans[0]; double partB = ans[1]; double partC = ans[2]; System.out.println(" " + partB + " ±√( "+ partC +" )"); System.out.println(" x = -------------------------"); System.out.println(" " + partA); } public static void main(String[] args){ /*設問の係数を二次元配列で準備*/ int[][] coefficient ={ {1,-8,9}, {1,16,58}, {1,-10,1}, {1,28,142}, {3,-30,51}, {4,24,28}, {1,-1,-1}, {9,18,2}, {2,-8,5}, {4,12,7}, {12,-48,39}, {9,24,10}, {6,-24,21}, {8,20,-1}, {9,-4,-1}, {12,2,-7} }; for(int i=0; i<coefficient.length; i++){ /*一問ずつ抽出*/ int[] line = coefficient[i]; //coefficient[i]は一次元配列 int a = line[0]; int b = line[1]; int c = line[2]; /*設問の表示*/ System.out.println( (i+1) + ". " + (int)a + "xx+" + (int)b +"x+" +(int)c +"=0" ); /*計算*/ double[] ans = method_04(a, b, c); /*13までの約分*/ ans = reduce(ans); /*答えの表示*/ printAnswer(ans); } } }
>javac -encoding UTF-8 Sample23_10.java
>java Sample23_10
1. 1xx+-8x+9=0
4.0 ±√( 7.0 )
x = -------------------------
1.0
2. 1xx+16x+58=0
-8.0 ±√( 6.0 )
x = -------------------------
1.0
3. 1xx+-10x+1=0
5.0 ±√( 24.0 )
x = -------------------------
1.0
4. 1xx+28x+142=0
-14.0 ±√( 54.0 )
x = -------------------------
1.0
5. 3xx+-30x+51=0
5.0 ±√( 8.0 )
x = -------------------------
1.0
6. 4xx+24x+28=0
-3.0 ±√( 2.0 )
x = -------------------------
1.0
7. 1xx+-1x+-1=0
1.0 ±√( 5.0 )
x = -------------------------
2.0
8. 9xx+18x+2=0
-3.0 ±√( 7.0 )
x = -------------------------
3.0
9. 2xx+-8x+5=0
4.0 ±√( 6.0 )
x = -------------------------
2.0
10. 4xx+12x+7=0
-3.0 ±√( 2.0 )
x = -------------------------
2.0
11. 12xx+-48x+39=0
4.0 ±√( 3.0 )
x = -------------------------
2.0
12. 9xx+24x+10=0
-4.0 ±√( 6.0 )
x = -------------------------
3.0
13. 6xx+-24x+21=0
4.0 ±√( 2.0 )
x = -------------------------
2.0
14. 8xx+20x+-1=0
-5.0 ±√( 27.0 )
x = -------------------------
4.0
15. 9xx+-4x+-1=0
2.0 ±√( 13.0 )
x = -------------------------
9.0
16. 12xx+2x+-7=0
-1.0 ±√( 85.0 )
x = -------------------------
12.0