$B%a%=%C%I$N%5%s%W%k(B

Revised: Dec./30th/2001: Since: Dec./30th/2001

$B$3$3$G$O!"Fs

$BFs

ax^2 + bx + c = 0

$B%3%^%s%I%i%$%s0z?t$+$i!"(B a, b, c $B$r

     -b ± D
x = ---------- ,	D^2 = b^2 -4ac.
        2a

D^2 $B$OH=JL<0$H8F$P$l!"@5?t$^$?$O#0(B (D^2 ≥ 0) $B$J$i$P

$BF1$8%/%i%9Fb$K:n@.(B

$BMxMQ$9$k%a%=%C%I$HF1$8%/%i%9Fb$K!"2r$N8x<0$N%a%=%C%I$r:n@.$7$^$9!#(B$B=$>~;R(B static $B$,@k8@$5$l$?(B main() $B%a%=%C%I$+$iMxMQ$7$^$9$+$i!"$3$N2r$N7W;;%a%=%C%I$b(B static $B$K$7$F$*$/I,MW$,$"$j$^$9!#(B

KaiTest.java:

class KaiTest {
	public static void main(String[] args) {
		System.out.print(args[0] + "x*x + ");
		System.out.print(args[1] + "x + ");
		System.out.println(args[2]);
		//$B0z?t$r(B double $B7?$KJQ49(B
		double a = Double.parseDouble(args[0]);
		double b = Double.parseDouble(args[1]);
		double c = Double.parseDouble(args[2]);
		//$B%a%=%C%I$NLa$jCM$rG[Ns$GDj5A(B
		double[] x;
		//$B%a%=%C%I8F$S=P$7(B
		x = koushiki(a,b,c);
		System.out.println("\t$B2r(B x1 = " + x[0]);
		System.out.println("\t$B2r(B x2 = " + x[1]);
	}
	static double[] koushiki(double a, double b, double c) {
		//$B2r$NG[Ns$rDj5A(B
		double[] x = {0,0};
		//$BH=JL<0$NJQ?t$rDj5A(B
		double d2=0, d=0;
		//$BH=JL<0(B
		d2 = b*b - 4*a*c;
		if (d2 < 0) {	//$B5u?t2r$J$i$P(B
			System.out.println("$B5u?t2r!*(B $BH=JL<0(B = " + d2);
		} else {	//$B}
}

$B%3%^%s%I%i%$%s0z?t(B args[0] - args[2] $B$O(B$BJ8;zNs7?(B$B$H$7$FDj5A$5$l$F$$$^$9$,!"(B Double $B%/%i%9(B$B$N(B$B@EE*%a%=%C%I(B parseDouble() $B$rMQ$$$F(B double $B7?$K7?JQ49$7$F$$$^$9!#$3$&$9$k$3$H$G!";MB'1i;;$,2DG=$K$J$j$^$9!#0lHL$K!"B>$N%Q%C%1!<%8$N%/%i%9$rMxMQ$9$k>l9g$O(B$B%$%s%]!<%H(B$B$9$kI,MW$,$"$j$^$9$,!"(B java.lang $B%Q%C%1!<%8$K4^$^$l$k%/%i%9$O!"(B javac $B$K$h$C$F%3%s%Q%$%k$5$l$k$H$-$K!"A4$F<+F0E*$K%$%s%]!<%H$5$l$^$9$N$G!"L@<(E*$K%$%s%]!<%H$9$kI,MW$O$"$j$^$;$s!#(B

$B2r$N8x<07W;;$N$?$a$N(B$B%a%=%C%I(B koushiki()$B!'(B

static$B@EE*%a%=%C%I!#(B main() $B%a%=%C%I$O@EE*%a%=%C%I$G$"$j!"@EE*%a%=%C%I$+$i$O@EE*%a%=%C%I$7$+MxMQ$G$-$J$$!#(B
double[]$BLa$jCM$O(B double $B7?(B$B$N(B$BG[Ns(B$B!#(B
koushiki(...)$B%a%=%C%IL>$H0z?t$NDj5A!#$3$N%a%=%C%I$O;0$D$N(B double $B7?$N%j%F%i%k$r0z?t$H$7$F
{...}$B%a%=%C%I$Nreturn $BJ8(B$B$G8F$S=P$785$K@)8f$rLa$9!#(B

$B$3$N%a%=%C%I$NFbIt$G$O!"H=JL<0$r7W;;$7!"IiCM$J$i$P@)8f$rLa$7!"#00J>e$NCM$J$i$P2r$N8x<0$r7W;;$7$F!"@)8f$rLa$7$^$9!#H=JL<0$NJ?J}:,$r7W;;$9$k$N$K!"(B$B%3%"%Q%C%1!<%8(B java.lang $B$N(B Math $B%/%i%9$GDj5A$5$l$?@EE*%a%=%C%I(B sqrt() $B$rMQ$$$F$$$^$9!#$3$N%/%i%9$O(B Double $B%/%i%9$d(B String $B%/%i%9$HF1MM$K(B java.lang $B%Q%C%1!<%8$K4^$^$l$F$$$k$N$G!"L@<(E*$J%$%s%]!<%H$OI,MW$"$j$^$;$s!#(B

C:\Java>javac KaiTest.java
C:\Java>java KaiTest 1 -2 -3
1x*x + -2x + -3
        $B2r(B x1 = 3.0
        $B2r(B x2 = -1.0
C:\Java>java KaiTest 1 -2 3
1x*x + -2x + 3
$B5u?t2r!*(B $BH=JL<0(B = -8.0
        $B2r(B x1 = 0.0
        $B2r(B x2 = 0.0

$BJL$N%/%i%9$N%a%=%C%I$H$7$FDj5A(B

$B

$B%/%i%9(B Kai$B!'(B

$B%U%#!<%k%I(B
double a, b, c
$BFs
double[] kai
$BFs
$B%3%s%9%H%i%/%?(B
Kai(double a , double b, double c)
$BFs
$B%a%=%C%I(B
public double calKai()
$B2r$N8x<0$r7W;;$7$F%U%#!<%k%I$K%;%C%H$7!"H=JL<0$NCM$rJV$9!#(B
public double[] getKai()
$B2r$N%U%#!<%k%I$NCM$rJV$9!#(B

$B$3$3$G$O!"$3$N$h$&$JH/A[$G%3!<%G%#%s%0$7$^$9!#$3$N%/%i%9$rMxMQ$9$k(B main() $B%a%=%C%I$O!"(B KaiTest2 $B%/%i%9$K:n$j$^$9!#(B

KaiTest2.java:

//$BMxMQ$5$l$kFs//$B%3%s%9%H%i%/%?(B
	//ax^2 + bx +c = 0
	Kai(double a , double b, double c) {
		this.a = a;
		this.b = b;
		this.c = c;
	}
	//$B2r$N8x<07W;;(B
	public double calKai() {
		//$BH=JL<0$NJQ?t$rDj5A(B
		double d2 = 0, d = 0;
		//$BH=JL<0(B
		d2 = b*b - 4*a*c;
		if (d2 >= 0) {	//$BH=JL<0$,@5$+#0$J$i$P(B
			d = Math.sqrt(d2);
			kai[0] = (-b + d)/(2*a);	//$B2r#1(B
			kai[1] = (-b - d)/(2*a);	//$B2r#2(B
		}
		return d2;
	}
	//$B2r$rF@$k(B
	public double[] getKai() {
		return kai;
	}
}
//Kai $B%/%i%9$NMxMQ(B
class KaiTest2 {
	public static void main(String[] args) {
		System.out.print(args[0] + "x*x + ");
		System.out.print(args[1] + "x + ");
		System.out.println(args[2]);
		//$B0z?t$r(B double $B7?$KJQ49(B
		double a = Double.parseDouble(args[0]);
		double b = Double.parseDouble(args[1]);
		double c = Double.parseDouble(args[2]);
		//$B2r$NG[Ns(B
		double[] x = {0,0};
		//$B2r$N8x<07W;;$NLa$jCM(B
		double d2;
		//$B%$%s%9%?%s%92=(B
		Kai obj = new Kai(a,b,c);
		//$B2r$N8x<0$r7W;;$9$k(B
		d2 = obj.calKai();
		if (d2 >= 0) {	//$BLa$jCM$,(B 0 $B0J>e$J$i$P(B
			//$B2r$rF@$k(B
			x = obj.getKai();
			if (d2 > 0) {
				System.out.println("\t $B2r(B x1 = " + x[0]);
				System.out.println("\t $B2r(B x2 = " + x[1]);
			} else {
				System.out.println("$B=E2r(B");
				System.out.println("\t x1 = x2 = " + x[0]);
			}
		} else {	//$BLa$jCM$,Ii$J$i$P(B
			System.out.println("$B5u?t2r!*(B $BH=JL<0(B = " + d2);
		}
	}
}
C:\Java>javac KaiTest2.java
C:\Java>java KaiTest2 1 -2 -3
1x*x + -2x + -3
         $B2r(B x1 = 3.0
         $B2r(B x2 = -1.0
C:\Java>java KaiTest2 1 -2 1
1x*x + -2x + 1
$B=E2r(B
         x1 = x2 = 1.0
C:\Java>java KaiTest2 1 -2 3
1x*x + -2x + 3
$B5u?t2r!*(B $BH=JL<0(B = -8.0


Copyright © 2001 SUGAI, Manabu. All Rights Reserved.
SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送