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 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) {} 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 ; 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.
Estava fazendo alguns exercícios básicos em Java e um deles pedia:
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 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) Agora vamos mostrar o código completo que escrevemos para calcular a raiz quadrada: Código Completo
importarjava.util. Scanner; 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 LinuxVocê pode criar um arquivo java usando qualquer editor de texto no sistema operacional Linux, por exemplo. Depois de escrever e salvar o código, você precisa compilá-lo digitando: E depois de compilar, você pode executar o código usando:
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. |