2012-04-01 2 views
-4

Я делаю тестирование кода для программы, вычислить результаты для квадратного уравненияТестирование квадратного уравнения

мне нужно иметь тестовые данные для следующей ситуации, когда не равен нуль и d положительной есть две возможности, которые находятся в коде ниже, мне нужно найти пример для первого насыщения, когда Math.abs (b/a - 200.0) < 1.0e-4, все значения, которые я пробовал, вызывают второй

   caption= "Two roots"; 
       if (Math.abs(b/a - 200.0) < 1.0e-4) 
       { 
        System.out.println("first one"); 
        x1 = (-100.0 * (1.0 + Math.sqrt(1.0 - 1.0/(10000.0 * a)))); 
        x2 = (-100.0 * (1.0 - Math.sqrt(1.0 - 1.0/(10000.0 * a)))); 
       } 
       else 
       { 
        System.out.println("secrst one"); 

        x1 = (-b - Math.sqrt(d))/(2.0 * a); 
        x2 = (-b + Math.sqrt(d))/(2.0 * a); 
       } 
      } 
     }        

ответ

1

Не знаете, в чем проблема. Я писал:

public class Quad 
{ 
    public static void main(String[] args) { 
     double a = Double.parseDouble(args[0]); 
     double b = Double.parseDouble(args[1]); 

     System.out.println(Math.abs(b/a - 200.0)); 

     if (Math.abs(b/a - 200.0) < 1.0e-4) { 
      System.out.println("first one"); 
     } 
     else { 
      System.out.println("second one"); 
     } 
    } 
} 

И некоторый вывод:

animato:~/src/Java/SO$ java Quad 1 200 
0.0 
first one 
animato:~/src/Java/SO$ java Quad 2 400 
0.0 
first one 
animato:~/src/Java/SO$ java Quad -3 -600 
0.0 
first one 
+0

да вот что я хочу поблагодарить вас много. Мне нужен пример значений, которые выполняли оператор (первый). – user1201587

Смежные вопросы