import java.io.*; //import java.io.BufferedReader; //import java.io.InputStreamReader; //import java.io.IOException; public class kadai2 { public static void main(String arg[]) { BufferedReader myReader = new BufferedReader(new InputStreamReader (System.in),1); double A=0.0; double B=0.0; double C=0.0; try{ System.out.println("aを入力してください"); String A_Reader = myReader.readLine(); A = Double.parseDouble(A_Reader); System.out.println("bを入力してください"); String B_Reader = myReader.readLine(); B = Double.parseDouble(B_Reader); System.out.println("cを入力してください"); String C_Reader = myReader.readLine(); C = Double.parseDouble(C_Reader); double denominator = 2*A; double first_b= -B; double root_Before=Math.pow(B,2)- (4*A*C); double kyo = Math.abs(root_Before); double root=Math.sqrt(root_Before); double num1 =first_b + root; double num2 =first_b - root; Fraction f=new Fraction(num1,denominator); Fraction f2=new Fraction(num2,denominator); System.out.println( "計算しない表示は" + first_b+ "±√" + root_Before + "/" + denominator +"です。" ); if(root_Before<0) { System.out.println("計算結果は" +first_b + "±√"+kyo+"i" + "/" + denominator + "(虚数解)"); } if(root_Before==0) { System.out.println("計算結果は" + num1 +"/"+ denominator+"(重根)"); System.out.println("計算結果2は" + f.numerator+"/"+ f.denominator+"(重根)"); } if(root_Before>0) { System.out.println("計算結果は" + num1 +"/"+ denominator + " or " + num2 + "/" + denominator +"です。" ); System.out.println("計算結果2は" + f.numerator +"/"+ f.denominator + " or " + f2.numerator + "/" + f2.denominator +"です。" ); } }catch(IOException e){ }catch(NumberFormatException n){System.out.println("入力された数値が正しくないです。"); } } }