partA = 2*a partB = -b partC = (b*b-4*a*c)
partB ±√(partC) x = ------------------ partA
//Sample07_131.java class Sample07_131 { static double[] method_04(double a, double b, double c){ /*各パートの計算*/ double[] ans = {(2*a) , -b , (b*b-4*a*c)}; 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 a=2; int b=3; int c=-4; /*問題の表示*/ System.out.println( (int)a + "xx+" + (int)b +"x+" +(int)c +"=0" ); double[] ans = method_04(a, b, c);//計算 printAnswer(ans);//答えの表示 } }
>javac Sample07_131.java
>java Sample07_131
2xx+3x+-4=0
-3.0 ±√( 41.0 )
x = -------------------------
4.0
次の2次方程式を解きなさい 1. x2 -2x - 1= 0 2. x2 +4x + 1= 0 3. x2 -6x + 1= 0 4. x2+10x +13= 0 5. 2x2 -4x - 8= 0 6. 3x2 +6x - 6= 0 7. x2 -5x + 5= 0 8. x2 + x - 3= 0 9. 2x2 -8x + 1= 0 10. 2x2+12x + 7= 0 11. x2 -2x - 5= 0 12. 3x2+24x +39= 0 13. 3x2 -8x + 3= 0 14. 8x2+24x +13= 0 15. 5x2-10x + 3= 0 16. 7x2 +4x - 1= 0
//Sample07_132.java class Sample07_132 { static double[] method_04(double a, double b, double c){ /*各パートの計算*/ double[] ans = {(2*a) , -b , (b*b-4*a*c)}; 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,-2,-1}, {1,4,1}, {1,-6,1}, {1,10,13}, {2,-4,-8}, {3,6,-6}, {1,-5,5}, {1,1,-3}, {2,-8,1}, {2,12,7}, {1,-2,-5}, {3,24,39}, {3,-8,3}, {8,24,13}, {5,-10,3}, {7,4,-1} }; for(int i=0; i<coefficient.length; i++){ /*一問ずつ抽出*/ int[] line = 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); /*答えの表示*/ printAnswer(ans); } } }
>javac Sample07_132.java
>java Sample07_132
1. 1xx+-2x+-1=0
2.0 ±√( 8.0 )
x = -------------------------
2.0
2. 1xx+4x+1=0
-4.0 ±√( 12.0 )
x = -------------------------
2.0
3. 1xx+-6x+1=0
6.0 ±√( 32.0 )
x = -------------------------
2.0
4. 1xx+10x+13=0
-10.0 ±√( 48.0 )
x = -------------------------
2.0
5. 2xx+-4x+-8=0
4.0 ±√( 80.0 )
x = -------------------------
4.0
6. 3xx+6x+-6=0
-6.0 ±√( 108.0 )
x = -------------------------
6.0
7. 1xx+-5x+5=0
5.0 ±√( 5.0 )
x = -------------------------
2.0
8. 1xx+1x+-3=0
-1.0 ±√( 13.0 )
x = -------------------------
2.0
9. 2xx+-8x+1=0
8.0 ±√( 56.0 )
x = -------------------------
4.0
10. 2xx+12x+7=0
-12.0 ±√( 88.0 )
x = -------------------------
4.0
11. 1xx+-2x+-5=0
2.0 ±√( 24.0 )
x = -------------------------
2.0
12. 3xx+24x+39=0
-24.0 ±√( 108.0 )
x = -------------------------
6.0
13. 3xx+-8x+3=0
8.0 ±√( 28.0 )
x = -------------------------
6.0
14. 8xx+24x+13=0
-24.0 ±√( 160.0 )
x = -------------------------
16.0
15. 5xx+-10x+3=0
10.0 ±√( 40.0 )
x = -------------------------
10.0
16. 7xx+4x+-1=0
-4.0 ±√( 44.0 )
x = -------------------------
14.0