Como tirar raiz quadrada no java

Para encontrar a raiz quadrada de um número, você precisa encontrar a operação inversa da multiplicação de um número por si só. Enquanto a linguagem de programação Java fornece uma função built-in " Math.sqrt ()" para calcular a raiz quadrada de um número qualquer , ele aceita apenas um ponto flutuante valor duplo tipo de dados. No entanto, você pode encontrar-se a necessidade de encontrar a raiz quadrada de um número em um tipo de dados diferente. Para este efeito , você pode construir uma função personalizada para calcular o valor da raiz quadrada manualmente. Instruções
1

Definir um método para calcular a raiz quadrada . Você deve dar o método um nome descritivo que evidencia a sua função . Certifique-se que todos os elementos necessários de um método estão presentes , ou seja, seu tipo de retorno , nome, parênteses que encerram para argumentos de método ea declaração corpo chaves. Por exemplo, um método adequado para obter a raiz quadrada de um número é :

BigDecimal público se ( BigDecimal n) {}
2

Conclua o código do corpo do método de escrita um algoritmo para calcular a aproximação da raiz quadrada de um número . Você pode usar o método de iteração de Newton para formar a base matemática de seu cálculo. Neste método, você pode calcular a raiz quadrada de um número , resolvendo repetidamente o XK equação recorrentes + 1 = 1 /2 ( xk + n /xk ), até o valor de aproximação que se aproxime do valor real de raiz quadrada. Por exemplo , o seguinte é um segmento de código em Java que realiza este cálculo :

iterações = 0;

boolean mais = true;

enquanto (mais) {< br >

lastGuess = palpite ;

acho = n.divide ( palpite , escala, BigDecimal.ROUND_HALF_UP );

acho = guess.add ( lastGuess );

acho = guess.divide ( DOIS , escala, BigDecimal.ROUND_HALF_UP );

trace ( "Next palpite " + guess.toString ());

erro = n.subtract ( guess.multiply ( suposição ) );

if ( + + iterações > = maxIterations ) {

mais = false; }

else if ( lastGuess. igual a ( acho) ) {

mais = error.abs ( ) compareTo ( ONE) > = 0 ; .

}

}

retorno acho ;
3

Definir outros métodos de apoio ao método descoberta da raiz quadrada principal , sempre que necessário. Você pode encontrar -se a necessidade de definir métodos para encontrar o valor inicial aproximação , o cálculo de erros e definir o número de iterações. Por exemplo, o código a seguir encontra o valor inicial aproximação a ser usado no cálculo principal :

private static BigDecimal getInitialApproximation ( BigDecimal n) {

BigInteger integerPart = n.toBigInteger ();

int length = integerPart.toString () comprimento ();

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

comprimento - ,.

}

comprimento /= 2;

BigDecimal acho = ONE.movePointRight (comprimento) ;

retornar palpite ;

}

4

Teste o seu método de raiz quadrada , chamando-o e imprimir o resultado na tela. Por exemplo :

System.out.println (" Calculando a raiz quadrada de ");

sqrt = app.get (n ); < br >

int x = 2; Math. sqrt(x); Neste exemplo, utilizaremos o método sqrt da classe Math para extrair a raiz quadrada do número que for digitado em uma caixa de texto, um componente 'Campo de texto' para o usuário digitar o número desejado, e um componente 'Rótulo' para exibir o resultado, ou seja, a raiz quadrada desse número. Todas as funções da biblioteca math....A biblioteca math. h.

FunçãoDescrição do comando
sqrt( )Calcula raiz quadrada
pow(variável, expoente)potenciação
sin( )seno
cos( )cosseno
Mais 5 linhas A raiz quadrada de 100 é 10. não pode ser expressa como um número finito de casas decimais, uma aproximação com 65 dígitos decimais é: 1,41421356237309504880168872420969807856967187537694807317667973799... ... Uma aproximação fraccionária para a raiz quadrada de 2 é 10/7 que, ao quadrado, fica 100/49, bem próximo de 2. A função Math. sqrt() retorna a raiz quadrada de um número ( \sqrt{x} ) . A constante PI, ou simplesmente PI, é o valor da razão entre a circunferência de qualquer círculo e seu diâmetro. Veja a figura abaixo para melhor entendimento: Em Java, o PI pode ser obtido por meio do uso da constante PI da classe Math. Seu valor é algo como: 3,14159... 11 A raiz quadrada de 121 corresponde a 11. Retorna o menor inteiro que é maior ou igual a um número. ... Retorna o coseno hiperbólico de um número . Math.exp(x) Retorna e^x , onde x é o argumento, e e é a constante de Euler (2.718...), a base do logaritmo natural.

Estava fazendo alguns exercícios básicos em Java e um deles pedia:

Neste exemplo, utilizaremos o método sqrt da classe Math para extrair a raiz quadrada do número que for digitado em uma caixa de texto, um componente 'Campo de texto' para o usuário digitar o número desejado, e um componente 'Rótulo' para exibir o resultado, ou seja, a raiz quadrada desse número.

Aí eu fiz tudo direito, só que deu um problema, quando eu digito a 1 letra:

Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: empty String at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1842) at sun.misc.FloatingDecimal.parseDouble(FloatingDecimal.java:110) at java.lang.Double.parseDouble(Double.java:538) at Apresentacao.TelaRaiz.jtNumeroKeyPressed(TelaRaiz.java:67) at Apresentacao.TelaRaiz.access$000(TelaRaiz.java:12) at Apresentacao.TelaRaiz$1.keyPressed(TelaRaiz.java:38) at java.awt.Component.processKeyEvent(Component.java:6491) at javax.swing.JComponent.processKeyEvent(JComponent.java:2832) at java.awt.Component.processEvent(Component.java:6310) at java.awt.Container.processEvent(Container.java:2236) at java.awt.Component.dispatchEventImpl(Component.java:4889) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1954) at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:806) at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1074) at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:945) at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:771) at java.awt.Component.dispatchEventImpl(Component.java:4760) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Window.dispatchEventImpl(Window.java:2746) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.awt.EventQueue$4.run(EventQueue.java:729) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Ele executa tudo e mesmo com erro ele calcula a raiz, mas somente quando eu digito a segunda letra, ou quando eu digito a primeira letra e aperto ENTER. Porque está dando esse erro? Eu queria que quando digitasse, ele capturasse e mostrasse o resultado.

Trecho de Erro:

private void jtNumeroKeyPressed(java.awt.event.KeyEvent evt) { int i = (int)(Double.parseDouble(jtNumero.getText())); jlResultado.setText("A raiz quadrada de: "+ i + " é: " + Math.sqrt(i)); }

Se você tiver um número e quiser calcular sua raiz quadrada, poderá fazer isso multiplicando seu fator por ele mesmo. Neste artigo, ensinaremos como calcular a raiz quadrada de qualquer número na linguagem de programação Java. Um Math.sqrt () que é usado para esse propósito, portanto, sintaxe detalhada e codificação para cálculo de raiz quadrada serão discutidos junto com exemplos.

Java fornece uma maneira muito simplificada e fácil de permitir que os usuários insiram valores por meio do teclado usando java.util. Scanner e para operações matemáticas java.lang. Matemática classe será usada. Para usar este objeto, uma importação do java.util. O scanner é necessário.

importarjava.util. Scanner;

importarjava.lang. Matemática;

Em seguida, criamos uma classe pública com o nome de ‘SqurareRoot ’ onde todos os cálculos serão realizados:

públicoclasse Raiz quadrada {

………

}

Também precisamos criar um objeto scanner que é usado para verificar a entrada fornecida pelo usuário:

Scanner em=novo Scanner(Sistema.dentro);

Agora, se você quiser imprimir qualquer coisa na tela, pode fazer isso digitando:

Sistema.Fora.println("Java Square Root. Exemplo 1");

Se você quiser receber informações do usuário, poderá fazer isso digitando:

No comando acima, usamos um tipo de dados inteiro que armazenará a entrada em uma variável x. Em seguida, precisamos escrever um código que possa ser usado para calcular a raiz quadrada e, para isso, usamos uma instrução condicional if-else. A condição acima mencionada mostra que se uma variável tiver um valor menor que zero, a raiz quadrada não seria um número real. Portanto, é recomendável fornecer um número positivo para este exemplo:

A condição acima mencionada mostra que se uma variável tiver um valor menor que zero, a raiz quadrada não seria um número real. Portanto, é recomendável fornecer um número positivo para este exemplo:

senão
{
// Calcule a raiz quadrada. Use java.lang. Aula de matemática.
Duplo r=Matemática.sqrt(x);
Sistema.Fora.println("Raiz quadrada de"+ x +" é "+ r);

A condição else mostra que, se um número for maior que zero, calcule a raiz quadrada usando uma função:

Duplo r=Matemática.sqrt(x);

Aqui nós usamos um tipo de dados double porque uma raiz quadrada também pode ser uma infração e o resultado será salvo em uma nova variável com um nome de ‘R’. Portanto, a instrução condicional if-else completa é mencionada a seguir.

E se(x<0)
{
Sistema.Fora.println("Erro! A raiz quadrada de um número negativo não é um número real ");
}
senão
{
Duplo r=Matemática.sqrt(x);
Sistema.Fora.println("Raiz quadrada de"+ x +" é "+ r);
}

Agora vamos mostrar o código completo que escrevemos para calcular a raiz quadrada:

Código Completo

importarjava.util. Scanner;
importarjava.lang. Matemática;
públicoclasse Raiz quadrada {
públicoestáticovazio a Principal(Corda[] args)
{
// Defina um objeto Scanner para entrada de dados.
Scanner em=novo Scanner(Sistema.dentro);
Sistema.Fora.println("Java Square Root. Exemplo 1");
Sistema.Fora.println("Por favor, insira um número inteiro (número inteiro)");
int x=dentro.nextInt();
// Exibir mensagem de erro se x for um número inteiro negativo
E se(x<0)
{
Sistema.Fora.println("Erro! A raiz quadrada de um número negativo não é um número real ");
}
senão
{
Duplo r=Matemática.sqrt(x);
Sistema.Fora.println("Raiz quadrada de"+ x +" é "+ r);
}
}
}

Observação: Para executar um código java, você precisa primeiro instalar o kit de desenvolvimento java (JDK) digitando

$ sudo apt install default-jdk

Como compilar um código java no sistema operacional Linux

Você pode criar um arquivo java usando qualquer editor de texto no sistema operacional Linux, por exemplo.

Como tirar raiz quadrada no java

Como tirar raiz quadrada no java

Depois de escrever e salvar o código, você precisa compilá-lo digitando:

E depois de compilar, você pode executar o código usando:

Como tirar raiz quadrada no java

Neste artigo, calculamos a raiz quadrada de qualquer número usando a linguagem de programação Java. O Math.sqrt (x) que é usado para este propósito e calculamos a raiz quadrada de um número positivo como um número negativo não terá um valor real.