Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> Java Programming >> .

Come fare una funzione di radice quadrata in Java

Per trovare la radice quadrata di un numero , è necessario trovare l'operazione inversa della moltiplicazione di un numero per se stesso . Mentre il linguaggio di programmazione Java fornisce una funzione built-in " Math.sqrt ( ) " per calcolare la radice quadrata di un numero , si accetta solo un doppio tipo di dati valore in virgola mobile . Tuttavia, si possono trovare te bisogno di trovare la radice quadrata di un numero in un tipo di dati diverso . A questo scopo , è possibile costruire una funzione personalizzata per calcolare manualmente il valore della radice quadrata . Istruzioni
1

definire un metodo per calcolare la radice quadrata . Si dovrebbe dare il metodo di un nome descrittivo che rispecchia la sua funzione . Assicurarsi che tutti gli elementi necessari di un metodo sono presenti, vale a dire il suo tipo di ritorno , nome , racchiudendo tra parentesi per gli argomenti dei metodi e la dichiarazione di corpo tra parentesi graffe . Ad esempio , un metodo adeguato per ottenere la radice quadrata di un numero è :

pubblico BigDecimal get ( BigDecimal n) { }
2

Completare il codice del corpo del metodo di scrittura un algoritmo per calcolare l' approssimazione della radice quadrata di un numero . È possibile utilizzare il metodo di iterazione di Newton per formare le basi matematiche del calcolo. In questo metodo, è possibile calcolare la radice quadrata di un numero risolvendo ripetutamente l'equazione ricorrente xk + 1 = 1/2 ( xk + n /xk ) fino a quando il valore di approssimazione si avvicina al valore reale di radice quadrata . Ad esempio , il seguente è un segmento di codice in Java che esegue questo calcolo :

iterazioni = 0;

booleano più = true ;

mentre ( più) { < br

lastGuess > = indovinare ;

indovinare = n.divide ( supposizione, scala , BigDecimal.ROUND_HALF_UP ) ;

guess = guess.add ( lastGuess ) ;

immagino = guess.divide ( TWO , scala , BigDecimal.ROUND_HALF_UP ) ;
traccia

( "Next indovinare" + guess.toString ());
errore

= n.subtract ( guess.multiply ( supposizione ) ) ;

se (+ + iterazioni > = maxIterations ) {

più = false; }


else if ( lastGuess. equals ( supposizione ) ) {

più = error.abs ( ) compareTo ( ONE ) > = 0; .

}

}

ritorno congettura ;
3

definire altri metodi di supporto al principale trovando metodo della radice quadrata , quando necessario . Potete trovare te bisogno di definire i metodi per trovare il valore iniziale approssimazione , calcolare errore e impostare il numero di iterazioni . Ad esempio, il codice seguente calcola il valore di prima approssimazione per essere utilizzato nel calcolo principale :

privato getInitialApproximation BigDecimal statico ( BigDecimal n) {

BigInteger integerPart = n.toBigInteger ( ) ; < . br

int lunghezza > = integerPart.toString ( ) lunghezza ();

if ( (lunghezza % 2) == 0 ) {
lunghezza

- ;

}

lunghezza /= 2;

BigDecimal indovinare = ONE.movePointRight (lunghezza) ;

ipotesi di ritorno;

}

4

prova il metodo della radice quadrata chiamandola e stampa il risultato sullo schermo . Per esempio :

System.out.println (" Il calcolo della radice quadrata di " ) ;

sqrt = app.get ( n) ;


 

Programmazione © www.354353.com