CodeGym /Java блог /Случаен /Метод Math.sqrt - квадратен корен в Java
John Squirrels
Ниво
San Francisco

Метод Math.sqrt - квадратен корен в Java

Публикувано в групата
Въпреки че изчисляването на квадратен корен в Java не е толкова често срещан въпрос за интервюта за разработка на софтуер, понякога интервюто може да ви попита нещо като: „ Имате цяло число x. Създайте програма на Java, която ще изчисли своя квадратен корен”. За да сме сигурни, че такъв елементарен въпрос няма да ви хване неподготвен, нека да разгледаме How се прави квадратен корен в Java.

Квадрат и квадратен корен: Преглед на математическите концепции

За да сте сигурни, че нямате объркване, когато работите с квадрати и корени, нека прегледаме теорията на тази концепция. Квадрат на число е това число, умножено по себе си. Ако n = 4, тогава n^2 = 4 4 = 16. Корен квадратен от число е числото, което, ако се умножи по себе си, дава дадена стойност X. Например, трябва да намерите корен квадратен от n = 16, като намерите число, което, ако бъде повдигнато на степен две, дава 16, ще решите проблема. В случай на n квадратният корен от числото 16 е 4 (тъй като 4 * 4 = 16).

Как да направите квадратен корен в Java с помощта на java.lang.Math.sqrt()

Най-често срещаният начин за намиране на корен квадратен от число в Java е чрез прилагане на java.lang.Math.sqrt()метода. Ето общия синтаксис на метода java.lang.Math.sqrt():

public static double sqrt(double a)
В метода a е стойност, повишена на степен две, за която искате да получите квадратен корен. След като разработчик приложи java.lang.Math.sqrt(), методът ще върне положителния корен квадратен от a (ако a е по-голямо от 0). За отрицателни аргументи java.lang.Math.sqrtвръща NaN изход.

Специални случаи на връщания от java.lang.Math.sqrt().

Както бе споменато по-горе, в повечето случаи методът връща положителни стойности. Има обаче няколко специфични случая, които разработчикът трябва да знае, когато създава програма за намиране на корен.
  • За аргументи, които имат NaN стойности or са отрицателни, методът ще върне NaN резултат.
  • За аргументи, които са безкрайно положителни, методът ще върне безкрайно положителен резултат.
  • За аргументи, състоящи се от положителна or отрицателна нула, квадратният корен от a ще бъде equals на a.

Пример за използване на java.lang.Math.sqrt()


package MyPackage;
 
public class SquareRoot2 {
 
    public static void main(String args[])
    {
        double a = 100;
   
        System.out.println(Math.sqrt(a));
        // For positive values, the output is the square root of x 
   
        double b = -81.00;
   
        System.out.println(Math.sqrt(b));
        // For negative values as input, Output NaN 
   
        double c = 0.0/0;
        // Input NaN, Output NaN 
   
        System.out.println(Math.sqrt(c));
   
        double d = 1.0/0; 
        // For inputs containing  positive infinity, Output positive infinity  
   
        System.out.println(Math.sqrt(d));
         
        double e = 0.0;
        // Input positive Zero, Output positive zero 
         
        System.out.println(Math.sqrt(e));
    }
         
}

Намиране на квадратни корени в Java Практически проблем

След като вече знаете How да създадете програма, която изчислява квадратни корени в Java, нека да разгледаме How концепцията се вписва в по-напреднали практически проблеми. Например, интервюиращият може да ви помоли да решите квадратно уравнение. Нека да разгледаме How да се справим с подобен проблем. Задача: решете квадратно уравнение, където a = 1, b = 5, c = 2. Решение:

import java.util.Scanner;
public class Exercise2 {

    
  public static void main(String[] Strings) {

        Scanner input = new Scanner(System.in);

            System.out.print("Input a: ");
            double a = input.nextDouble();
            System.out.print("Input b: ");
            double b = input.nextDouble();
            System.out.print("Input c: ");
            double c = input.nextDouble();

            double result = b * b - 4.0 * a * c;

            if (result > 0.0) {
                double r1 = (-b + Math.pow(result, 0.5)) / (2.0 * a);
                double r2 = (-b - Math.pow(result, 0.5)) / (2.0 * a);
                System.out.println("The roots are " + r1 + " and " + r2);
            } else if (result == 0.0) {
                double r1 = -b / (2.0 * a);
                System.out.println("The square root is " + r1);
            } else {
                System.out.println("There are no real square roots in the equation.");
            }

    }
}

Заключение

Това беше кратко описание на намирането на корен квадратен от число в Java. За начинаещи в разработката на софтуер е добра идея да практикуват различни сценарии (a>0, a<0, a = 0), за да схванат добре концепцията. След като разберете тънкостите на метода java.lang.Math.sqrt, започнете да прилагате метода в сложни програми, обработвайки задачи като решаване на квадратни уравнения.
Коментари
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION