CodeGym /Java blogg /Slumpmässig /Math.sqrt Method - kvadratrot i Java
John Squirrels
Nivå
San Francisco

Math.sqrt Method - kvadratrot i Java

Publicerad i gruppen
Även om att beräkna en kvadratrot i Java inte är en så vanlig fråga för programvaruutvecklingsintervjuer, ibland kan en intervju fråga dig något i stil med: " Du har ett heltal x. Skapa ett Java-program som skulle beräkna dess kvadratrot”. För att försäkra dig om att en sådan grundläggande fråga inte övertygar dig, låt oss ta en titt på hur man gör kvadratrot i Java.

Fyrkant och kvadratrot: Granska matematiska koncept

För att vara säker på att du inte har någon förvirring när du har att göra med kvadrater och rötter, låt oss se över teorin om detta koncept. En kvadrat av ett tal är det talet multiplicerat med sig självt. Om n = 4, så är n^2 = 4 4 = 16. Kvadratroten ur ett tal är talet som, om det multipliceras med sig självt, ger ett givet värde X. Till exempel måste du hitta kvadratroten ur n = 16, genom att hitta en siffra som, om den höjs till potensen två ger 16, kommer du att lösa problemet. I fallet med n är kvadratroten av talet 16 4 (eftersom 4 * 4 = 16).

Hur man gör kvadratrot i Java med java.lang.Math.sqrt()

Det vanligaste sättet att hitta en kvadratrot ur ett tal i Java är att använda metoden java.lang.Math.sqrt(). Här är den allmänna syntaxen för java.lang.Math.sqrt()-metoden:

public static double sqrt(double a)
I metoden är a ett värde förhöjt till två potens du vill få kvadratroten för. När en utvecklare tillämpar java.lang.Math.sqrt()kommer metoden att returnera den positiva kvadratroten av a (om a-värdet är större än 0). För negativa argument, java.lang.Math.sqrtreturnerar en NaN-utgång.

Specialfall av java.lang.Math.sqrt() returnerar

Som nämnts ovan returnerar metoden i de flesta fall positiva värden. Det finns dock några specifika fall som en utvecklare bör vara medveten om när han skapar ett rotsökningsprogram.
  • För argument som har NaN-värden eller är negativa returnerar metoden ett NaN-resultat.
  • För argument som är oändligt positiva kommer metoden att ge ett oändligt positivt resultat.
  • För argument som består av en positiv eller negativ nolla är kvadratroten ur ett testamente lika med a.

Exempel på användning av 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));
    }
         
}

Att hitta kvadratrötter i Java-övningsproblem

Nu när du vet hur man skapar ett program som beräknar kvadratrötter i Java, låt oss ta en titt på hur konceptet passar in i mer avancerade övningsproblem. Till exempel kan en intervjuare be dig lösa en andragradsekvation. Låt oss ta en titt på hur man hanterar ett sådant problem. Problem: lös en andragradsekvation där a = 1, b = 5, c = 2. Lösning:

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.");
            }

    }
}

Slutsats

Detta var en kort sammanfattning av att hitta en kvadratrot ur ett tal i Java. För en nybörjare inom mjukvaruutveckling är det en bra idé att öva på olika scenarier (a>0, a<0, a = 0) för att få ett gediget grepp om konceptet. När du förstår ins och outs i java.lang.Math.sqrt-metoden, börja tillämpa metoden i komplexa program, hantera uppgifter som att lösa andragradsekvationer.
Kommentarer
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION