Листинг Вычисление корней квадратного уравнения

class QuadraticEquation{

public static void main(String[] args){

double a = 0.5, b = -2.7, с = 3.5, d, eps=le-8;

if (Math.abs(a) < eps)

if (Math.abs(b) < eps)

if (Math.abs(c) < eps) // Все коэффициенты равны нулю

System.out.println("Решение —любое число");

else

System.out.println("Решений нет");

else

System.out.println("xl = x2 = " +(-c / b));

else { // Коэффициенты не равны нулю

if((d = b**b — 4*a*c)< 0.0){ // Комплексные корни

d = 0.5 * Math.sqrt(-d) / a;

a = -0.5 * b/ a;

System.out.println("xl = " +a+ " +i " +d+

",x2 = " +a+ " -i " +d);

} else {

// Вещественные корни

d =0.5 * Math.sqrt(d) / a;

a = -0.5 * b / a;

System.out.println("x1 = " + (a + d) + ", x2 = " +(a - d));}}}

В этой программе использованы методы вычисления модуля abs() и квадратного корня sqrt о вещественного числа из встроенного в Java API класса Math. Поскольку все вычисления с вещественными числами производятся приближенно, мы считаем, что коэффициент уравнения равен нулю, если его модуль меньше 0,00000001. Обратите внимание на то, как в методе println о используется сцепление строк, и на то, как операция присваивания при вычислении дискриминанта вложена в логическое выражение.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: