SlideShare une entreprise Scribd logo
1  sur  4
Télécharger pour lire hors ligne
www.tiexpert.net                                                            Pág. 1 de 4

Classe Math
Vimos anteriormente como tratar números de vários tipos. Veremos agora, como aplicar
conceitos matemáticos mais complexos a nossos processamentos usando a classe Math do
pacote Java.lang.
A classe Math nos proporciona uma série de operações e constantes matemáticas que são
facilmente acessadas estaticamente, ou seja, não precisamos instanciar um objeto para
podermos usar seus métodos.
Dentro desta classe encontramos vários métodos e categorizamos os mais utilizados da
seguinte forma:
    • Máximo e Mínimo;
    • Potências e Raízes;
    • Logaritmo;
    • Arredondamentos e Valores Absolutos;
    • Trigonometria;
    • Números Randômicos.

Constantes
A classe Math possui duas constantes que são o Π (pi) e E (base de logaritmos naturais ou
neperianos) cada uma com o valor de 3,141592653589793 e 2.718281828459045,
respectivamente.
Abaixo está um exemplo simples com o cálculo do comprimento do círculo:
public class ComprimentoCirculo {
    public static void main(String[] args) {
        float raio = 2.4f;
        double comprimento = 2 * raio * Math.PI;
        System.out.println(comprimento);
    }
}

Máximo e Mínimo
Como o título já sugere, a classe Math de Java possui dois métodos que retornam o maior e o
menor valor de seus argumentos. Esses métodos são max() e min().
public class MenorMaior {
    public static void main(String[] args) {
        float precoProdutoA[] = { 11.2f, 15.12f };
        float precoProdutoB[] = { 19.7f, 20 };
        System.out.println("O maior preço do produto A é "
                    + Math.max(precoProdutoA[0], precoProdutoA[1]));
        System.out.println("O menor preço do produto B é "
                    + Math.min(precoProdutoB[0], precoProdutoB[1]));
    }
}

Potências e raízes
Podemos fazer cálculos de potência e raízes com facilidade usando os métodos disponíveis em
Math.
    • pow (base, expoente) - calcula a potência da base elevada ao expoente.
    • sqrt (número) - calcula a raíz quadrada de um número
    • cbrt (número) - calcula a raiz cúbica de um número
    • exp (expoente) - calcula o valor da constante de Euler (E) elevado ao expoente
http://www.tiexpert.net/programacao/java/math.php
www.tiexpert.net                                                              Pág. 2 de 4
public class PotenciasRaizes {
    public static void main(String[] args) {
        System.out.println("1 MB tem " + Math.pow(2, 10) + " KB");
        System.out.println("A raiz quadrada de 121 é " + Math.sqrt(121)
            + " e a raiz cúbica de 1331 também é " + Math.cbrt(1331));
    }
}

Logaritmo
Na classe Math encontramos funções para cálculo de logaritmo natual, na base de 10 e a
soma do número mais 1. Tais métodos são:
    • log (número) - logaritmo natural de um número.
    • log10 (número) - logaritmo natural de um número na base 10
    • log1p (número) - logaritmo natual de um número somado a 1. Esse método retorna um
      resultado mais confiável se o número em questão for muito próximo a 0 ou um número
      fracionado. Ou seja, o resultado não é o mesmo entre os métodos log1p (0.1f) e log
      (1+0.1f).
public class Exemplo {
    public static void main(String[] args) {
        float nr = 0.1f;
        System.out.println("Resultado 1: " + Math.log(nr+1));
        System.out.println("Resultado 2: " + Math.log1p(nr));
    }
}

Arredondamentos e Valores Absolutos
Existem algumas formas de arredondar um número fracionado (float e double)
transformando-o em um número inteiro e também como obter o valor absoluto de qualquer
número..
    • abs (número) - retorna o valor absoluto do mesmo tipo do parâmetro (ex.: inteiro
      retorna int positivo, decimal retorna float positivo, etc)
    • ceil (decimal) - este método retorna o valor decimal do parâmetro sem a parte
      fracionada. Ex.: 2.1 será 2, 6.0 será 6, 10.8 será 10...
    • floor (decimal) - este método retorna o primeiro inteiro após o valor decimal. Ex.: 2.1
      será 3, 6.0 será 6, 10.8 será 11...
    • rint (decimal) - retorna um valor double mais próximo do valor do parâmetro.
    • round (decimal) - retorna o arredondamento aritmético do número decimal passado
      como parâmetro
public class Exemplo {
    public static void main(String[] args) {
        float nr = -5.75f;
        System.out.println("Absoluto: " + Math.abs(nr) +
                "nInteiro mais baixo: " + Math.ceil(nr) +
                "nInteiro mais alto: " + Math.floor(nr) +
                "nDouble mais próximo: " + Math.rint(nr) +
                "nArredondamento: " + Math.round(nr));
    }
}

Trigonometria
A maior parte dos métodos encontrados na classe Math são trigonométricas, o que ajuda
muito em cálculos mais complexos que envolvem figuras.
    • sin (graus) - este método retorna o valor do seno de acordo com o número de graus

http://www.tiexpert.net/programacao/java/math.php
www.tiexpert.net                                                              Pág. 3 de 4
      passado como parâmetro.
    • cos (graus) - este método retorna o valor do coseno de acordo com o número de graus
      passado como parâmetro.
    • tan (graus) - este método retorna o valor da tangente de acordo com o número de
      graus passado como parâmetro.
    • asin (graus) - este método retorna o valor do arco seno de acordo com o número de
      graus passado como parâmetro.
    • acos (graus) - este método retorna o valor do arco coseno de acordo com o número de
      graus passado como parâmetro.
    • atan (graus) - este método retorna o valor do arco tangente de acordo com o número
      de graus passado como parâmetro.
    • sinh (graus) - este método retorna o valor hiperbólico do seno de acordo com o número
      de graus passado como parâmetro.
    • cosh (graus) - este método retorna o valor hiperbólico do coseno de acordo com o
      número de graus passado como parâmetro.
    • tanh (graus) - este método retorna o valor hiperbólico da tangente de acordo com o
      número de graus passado como parâmetro.
    • hypot (x , y) - retorna o valor da hipotenusa, ou, basicamente, a distância entre dois
      pontos fundamentada na fórmula √x²+y² » [sqrt (pow(x, 2) + pow(y,2))].
    • toRadians (graus) - retorna um valor aproximado de radianos de acordo com o ângulo
      medido em graus.
    • toDegrees (raio) - retorna um valor aproximado de graus de acordo com o ângulo
      medido em raios.
public class Hipotenusa {
    public static void main(String[] args) {
        double ponto1 = 30;
        double ponto2 = 40;
        System.out.println("A distancia entre o "
                + ponto1 + " e o " + ponto2 + " é "
                + Math.hypot(ponto1, ponto2));
    }
}

Números Randômicos
Os números randômicos são obtidos usando o método random().
O método random() retorna um valor double em 0.0 e 1.0.
Para conseguirmos um valor limite ou um alcance (comumente chamado de range) delimitado,
devemos fazer pequenas operações matemáticas.
Essas operações são simples e podem ser resumidas da seguinte maneira.
    • O limite inferior, ou valor inicial (start value) será sempre somado ao número
      randômico.
    • O limite superior, ou alcance (range) será sempre o limite superior subtraído o limite
      inferior e depois multiplicado ao número randômico.
Por exemplo, se quisermos que um número randômico sempre fique entre 5 e 10,
procederíamos da seguinte maneira:
O menor número possível é 5, portanto ele será nosso start value ou limite inferior.
O maior número possível é 10, então 10 será nosso limite superior.
Como temos ambos os limites (inferior e superior) devemos criar um alcance (range). Para

http://www.tiexpert.net/programacao/java/math.php
www.tiexpert.net                                                                             Pág. 4 de 4
obtermos isso, subtrairemos o limite superior com o limite inferior (10-5=5).
public class Exemplo {
    public static void main(String[] args) {
        int limiteInferior = 5;
        int limiteSuperior = 10;
        int alcance = limiteSuperior - limiteInferior;
        double nrRandomico = Math.random();
        System.out.println("O número randômico escolhido entre 5 e 10 foi "
                + Math.round(limiteInferior + nrRandomico * alcance));
    }
}

                                                                                 Autor: Denys William Xavier
                                                           Este artigo está sob Licença Creative Commons
         Para ver uma cópia desta licença, visite http://creativecommons.org/licenses/by-nc-sa/2.5/br/
   ou envie uma carta para Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.




http://www.tiexpert.net/programacao/java/math.php

Contenu connexe

Tendances

Recursividade em C
Recursividade em CRecursividade em C
Recursividade em C
Caique Silva
 
13 introducao a analise de algoritmos
13   introducao a analise de algoritmos13   introducao a analise de algoritmos
13 introducao a analise de algoritmos
Ricardo Bolanho
 
Strings e manipulação de variáveis
Strings e manipulação de variáveisStrings e manipulação de variáveis
Strings e manipulação de variáveis
111111119
 
Diferenciação e Integração Numérica - @professorenan
Diferenciação e Integração Numérica - @professorenanDiferenciação e Integração Numérica - @professorenan
Diferenciação e Integração Numérica - @professorenan
Renan Gustavo
 

Tendances (20)

Análise de Algoritmos - Recursividade
Análise de Algoritmos - RecursividadeAnálise de Algoritmos - Recursividade
Análise de Algoritmos - Recursividade
 
Análise assintótica
Análise assintóticaAnálise assintótica
Análise assintótica
 
Recursividade em C
Recursividade em CRecursividade em C
Recursividade em C
 
13 introducao a analise de algoritmos
13   introducao a analise de algoritmos13   introducao a analise de algoritmos
13 introducao a analise de algoritmos
 
Relações de recorrência
Relações de recorrênciaRelações de recorrência
Relações de recorrência
 
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...
 
Pesquisa e ordenação recursividade
Pesquisa e ordenação   recursividadePesquisa e ordenação   recursividade
Pesquisa e ordenação recursividade
 
Análise de Algoritmos - As classes P e NP
Análise de Algoritmos - As classes P e NPAnálise de Algoritmos - As classes P e NP
Análise de Algoritmos - As classes P e NP
 
Strings e manipulação de variáveis
Strings e manipulação de variáveisStrings e manipulação de variáveis
Strings e manipulação de variáveis
 
QAP: Metodos construtivos, 2-opt, Busca tabu
QAP: Metodos construtivos, 2-opt, Busca tabuQAP: Metodos construtivos, 2-opt, Busca tabu
QAP: Metodos construtivos, 2-opt, Busca tabu
 
Mat limites 001
Mat limites  001Mat limites  001
Mat limites 001
 
DivisãO De PolinôMios
DivisãO De PolinôMiosDivisãO De PolinôMios
DivisãO De PolinôMios
 
Slide cn c05 2020.1
Slide cn c05 2020.1Slide cn c05 2020.1
Slide cn c05 2020.1
 
1 integr num_simples
1 integr num_simples1 integr num_simples
1 integr num_simples
 
Max min ime
Max min   imeMax min   ime
Max min ime
 
Polinômios
PolinômiosPolinômios
Polinômios
 
Cap9 - exemplos resolvidos em matlab
Cap9 - exemplos resolvidos em matlabCap9 - exemplos resolvidos em matlab
Cap9 - exemplos resolvidos em matlab
 
Mat polinomios 002
Mat polinomios  002Mat polinomios  002
Mat polinomios 002
 
Diferenciação e Integração Numérica - @professorenan
Diferenciação e Integração Numérica - @professorenanDiferenciação e Integração Numérica - @professorenan
Diferenciação e Integração Numérica - @professorenan
 
Sessao 5 Redundância e introdução à codificação de fonte
Sessao 5 Redundância e introdução à codificação de fonteSessao 5 Redundância e introdução à codificação de fonte
Sessao 5 Redundância e introdução à codificação de fonte
 

Similaire à Math

Classe integer-float-byte-short-long-double
Classe integer-float-byte-short-long-doubleClasse integer-float-byte-short-long-double
Classe integer-float-byte-short-long-double
PAULO Moreira
 
Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dados
gjpbg
 
Apostila estrutura de dados 2
Apostila estrutura de dados 2Apostila estrutura de dados 2
Apostila estrutura de dados 2
Leandro Lopes
 
Curso Básico de Java - Aula 10
Curso Básico de Java - Aula 10Curso Básico de Java - Aula 10
Curso Básico de Java - Aula 10
PeslPinguim
 
Algoritmo de ordenação heapsort.
Algoritmo de ordenação heapsort.Algoritmo de ordenação heapsort.
Algoritmo de ordenação heapsort.
Thaci Santos
 
Introdução a programação
Introdução a programaçãoIntrodução a programação
Introdução a programação
Gustavo Nazário
 

Similaire à Math (20)

Algoritmos de ordenação
Algoritmos de ordenaçãoAlgoritmos de ordenação
Algoritmos de ordenação
 
Classe integer-float-byte-short-long-double
Classe integer-float-byte-short-long-doubleClasse integer-float-byte-short-long-double
Classe integer-float-byte-short-long-double
 
Aula 3-lógica.pptx
Aula 3-lógica.pptxAula 3-lógica.pptx
Aula 3-lógica.pptx
 
Aula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.pptAula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.ppt
 
Aula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).pptAula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).ppt
 
Exemplos registros e funções
Exemplos registros e funçõesExemplos registros e funções
Exemplos registros e funções
 
Java para iniciantes
Java para iniciantesJava para iniciantes
Java para iniciantes
 
Aula2
Aula2Aula2
Aula2
 
Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dados
 
Apostila estrutura de dados 2
Apostila estrutura de dados 2Apostila estrutura de dados 2
Apostila estrutura de dados 2
 
Introdução à Linguagem Ruby
Introdução à Linguagem RubyIntrodução à Linguagem Ruby
Introdução à Linguagem Ruby
 
Curso Básico de Java - Aula 10
Curso Básico de Java - Aula 10Curso Básico de Java - Aula 10
Curso Básico de Java - Aula 10
 
Visualg
VisualgVisualg
Visualg
 
Java5
Java5Java5
Java5
 
Linguagem R
Linguagem RLinguagem R
Linguagem R
 
Algoritmo de ordenação heapsort.
Algoritmo de ordenação heapsort.Algoritmo de ordenação heapsort.
Algoritmo de ordenação heapsort.
 
Algoritmo0
Algoritmo0Algoritmo0
Algoritmo0
 
Java4
Java4Java4
Java4
 
Introdução a programação
Introdução a programaçãoIntrodução a programação
Introdução a programação
 
Apostila rpira
Apostila rpiraApostila rpira
Apostila rpira
 

Plus de PAULO Moreira

5 estruturas de controle
5 estruturas de controle5 estruturas de controle
5 estruturas de controle
PAULO Moreira
 
3.2 introdução a linguagem java
3.2 introdução a linguagem java3.2 introdução a linguagem java
3.2 introdução a linguagem java
PAULO Moreira
 
3.1 introdução a linguagem java
3.1 introdução a linguagem java3.1 introdução a linguagem java
3.1 introdução a linguagem java
PAULO Moreira
 
2.1 introdução a oo
2.1 introdução a oo2.1 introdução a oo
2.1 introdução a oo
PAULO Moreira
 
Trabalho de empreendedorismo
Trabalho de empreendedorismoTrabalho de empreendedorismo
Trabalho de empreendedorismo
PAULO Moreira
 
Seminário de empreendedorismo
Seminário de empreendedorismoSeminário de empreendedorismo
Seminário de empreendedorismo
PAULO Moreira
 
5. as regras de ouro do bilionário carlos slim
5. as regras de ouro do bilionário carlos slim5. as regras de ouro do bilionário carlos slim
5. as regras de ouro do bilionário carlos slim
PAULO Moreira
 
8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...
8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...
8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...
PAULO Moreira
 
Interrupções e interconexões
Interrupções e interconexõesInterrupções e interconexões
Interrupções e interconexões
PAULO Moreira
 
Hierarquia de memória
Hierarquia de memóriaHierarquia de memória
Hierarquia de memória
PAULO Moreira
 
Funcionamento de um sistema de computação
Funcionamento de um sistema de computaçãoFuncionamento de um sistema de computação
Funcionamento de um sistema de computação
PAULO Moreira
 

Plus de PAULO Moreira (20)

Metodos
MetodosMetodos
Metodos
 
5 estruturas de controle
5 estruturas de controle5 estruturas de controle
5 estruturas de controle
 
3.2 introdução a linguagem java
3.2 introdução a linguagem java3.2 introdução a linguagem java
3.2 introdução a linguagem java
 
3.1 introdução a linguagem java
3.1 introdução a linguagem java3.1 introdução a linguagem java
3.1 introdução a linguagem java
 
2.1 introdução a oo
2.1 introdução a oo2.1 introdução a oo
2.1 introdução a oo
 
1. apresentação
1. apresentação1. apresentação
1. apresentação
 
String
StringString
String
 
Showinputdialog
ShowinputdialogShowinputdialog
Showinputdialog
 
Joptionpane
JoptionpaneJoptionpane
Joptionpane
 
Negociação
NegociaçãoNegociação
Negociação
 
Trabalho de empreendedorismo
Trabalho de empreendedorismoTrabalho de empreendedorismo
Trabalho de empreendedorismo
 
Seminário de empreendedorismo
Seminário de empreendedorismoSeminário de empreendedorismo
Seminário de empreendedorismo
 
7. ecologia
7. ecologia7. ecologia
7. ecologia
 
6. conjuntura
6. conjuntura6. conjuntura
6. conjuntura
 
5. as regras de ouro do bilionário carlos slim
5. as regras de ouro do bilionário carlos slim5. as regras de ouro do bilionário carlos slim
5. as regras de ouro do bilionário carlos slim
 
8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...
8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...
8. marca cria cerveja e refrigerante solúvel para praticantes de esportes ao ...
 
Empreendedorismo
EmpreendedorismoEmpreendedorismo
Empreendedorismo
 
Interrupções e interconexões
Interrupções e interconexõesInterrupções e interconexões
Interrupções e interconexões
 
Hierarquia de memória
Hierarquia de memóriaHierarquia de memória
Hierarquia de memória
 
Funcionamento de um sistema de computação
Funcionamento de um sistema de computaçãoFuncionamento de um sistema de computação
Funcionamento de um sistema de computação
 

Math

  • 1. www.tiexpert.net Pág. 1 de 4 Classe Math Vimos anteriormente como tratar números de vários tipos. Veremos agora, como aplicar conceitos matemáticos mais complexos a nossos processamentos usando a classe Math do pacote Java.lang. A classe Math nos proporciona uma série de operações e constantes matemáticas que são facilmente acessadas estaticamente, ou seja, não precisamos instanciar um objeto para podermos usar seus métodos. Dentro desta classe encontramos vários métodos e categorizamos os mais utilizados da seguinte forma: • Máximo e Mínimo; • Potências e Raízes; • Logaritmo; • Arredondamentos e Valores Absolutos; • Trigonometria; • Números Randômicos. Constantes A classe Math possui duas constantes que são o Π (pi) e E (base de logaritmos naturais ou neperianos) cada uma com o valor de 3,141592653589793 e 2.718281828459045, respectivamente. Abaixo está um exemplo simples com o cálculo do comprimento do círculo: public class ComprimentoCirculo { public static void main(String[] args) { float raio = 2.4f; double comprimento = 2 * raio * Math.PI; System.out.println(comprimento); } } Máximo e Mínimo Como o título já sugere, a classe Math de Java possui dois métodos que retornam o maior e o menor valor de seus argumentos. Esses métodos são max() e min(). public class MenorMaior { public static void main(String[] args) { float precoProdutoA[] = { 11.2f, 15.12f }; float precoProdutoB[] = { 19.7f, 20 }; System.out.println("O maior preço do produto A é " + Math.max(precoProdutoA[0], precoProdutoA[1])); System.out.println("O menor preço do produto B é " + Math.min(precoProdutoB[0], precoProdutoB[1])); } } Potências e raízes Podemos fazer cálculos de potência e raízes com facilidade usando os métodos disponíveis em Math. • pow (base, expoente) - calcula a potência da base elevada ao expoente. • sqrt (número) - calcula a raíz quadrada de um número • cbrt (número) - calcula a raiz cúbica de um número • exp (expoente) - calcula o valor da constante de Euler (E) elevado ao expoente http://www.tiexpert.net/programacao/java/math.php
  • 2. www.tiexpert.net Pág. 2 de 4 public class PotenciasRaizes { public static void main(String[] args) { System.out.println("1 MB tem " + Math.pow(2, 10) + " KB"); System.out.println("A raiz quadrada de 121 é " + Math.sqrt(121) + " e a raiz cúbica de 1331 também é " + Math.cbrt(1331)); } } Logaritmo Na classe Math encontramos funções para cálculo de logaritmo natual, na base de 10 e a soma do número mais 1. Tais métodos são: • log (número) - logaritmo natural de um número. • log10 (número) - logaritmo natural de um número na base 10 • log1p (número) - logaritmo natual de um número somado a 1. Esse método retorna um resultado mais confiável se o número em questão for muito próximo a 0 ou um número fracionado. Ou seja, o resultado não é o mesmo entre os métodos log1p (0.1f) e log (1+0.1f). public class Exemplo { public static void main(String[] args) { float nr = 0.1f; System.out.println("Resultado 1: " + Math.log(nr+1)); System.out.println("Resultado 2: " + Math.log1p(nr)); } } Arredondamentos e Valores Absolutos Existem algumas formas de arredondar um número fracionado (float e double) transformando-o em um número inteiro e também como obter o valor absoluto de qualquer número.. • abs (número) - retorna o valor absoluto do mesmo tipo do parâmetro (ex.: inteiro retorna int positivo, decimal retorna float positivo, etc) • ceil (decimal) - este método retorna o valor decimal do parâmetro sem a parte fracionada. Ex.: 2.1 será 2, 6.0 será 6, 10.8 será 10... • floor (decimal) - este método retorna o primeiro inteiro após o valor decimal. Ex.: 2.1 será 3, 6.0 será 6, 10.8 será 11... • rint (decimal) - retorna um valor double mais próximo do valor do parâmetro. • round (decimal) - retorna o arredondamento aritmético do número decimal passado como parâmetro public class Exemplo { public static void main(String[] args) { float nr = -5.75f; System.out.println("Absoluto: " + Math.abs(nr) + "nInteiro mais baixo: " + Math.ceil(nr) + "nInteiro mais alto: " + Math.floor(nr) + "nDouble mais próximo: " + Math.rint(nr) + "nArredondamento: " + Math.round(nr)); } } Trigonometria A maior parte dos métodos encontrados na classe Math são trigonométricas, o que ajuda muito em cálculos mais complexos que envolvem figuras. • sin (graus) - este método retorna o valor do seno de acordo com o número de graus http://www.tiexpert.net/programacao/java/math.php
  • 3. www.tiexpert.net Pág. 3 de 4 passado como parâmetro. • cos (graus) - este método retorna o valor do coseno de acordo com o número de graus passado como parâmetro. • tan (graus) - este método retorna o valor da tangente de acordo com o número de graus passado como parâmetro. • asin (graus) - este método retorna o valor do arco seno de acordo com o número de graus passado como parâmetro. • acos (graus) - este método retorna o valor do arco coseno de acordo com o número de graus passado como parâmetro. • atan (graus) - este método retorna o valor do arco tangente de acordo com o número de graus passado como parâmetro. • sinh (graus) - este método retorna o valor hiperbólico do seno de acordo com o número de graus passado como parâmetro. • cosh (graus) - este método retorna o valor hiperbólico do coseno de acordo com o número de graus passado como parâmetro. • tanh (graus) - este método retorna o valor hiperbólico da tangente de acordo com o número de graus passado como parâmetro. • hypot (x , y) - retorna o valor da hipotenusa, ou, basicamente, a distância entre dois pontos fundamentada na fórmula √x²+y² » [sqrt (pow(x, 2) + pow(y,2))]. • toRadians (graus) - retorna um valor aproximado de radianos de acordo com o ângulo medido em graus. • toDegrees (raio) - retorna um valor aproximado de graus de acordo com o ângulo medido em raios. public class Hipotenusa { public static void main(String[] args) { double ponto1 = 30; double ponto2 = 40; System.out.println("A distancia entre o " + ponto1 + " e o " + ponto2 + " é " + Math.hypot(ponto1, ponto2)); } } Números Randômicos Os números randômicos são obtidos usando o método random(). O método random() retorna um valor double em 0.0 e 1.0. Para conseguirmos um valor limite ou um alcance (comumente chamado de range) delimitado, devemos fazer pequenas operações matemáticas. Essas operações são simples e podem ser resumidas da seguinte maneira. • O limite inferior, ou valor inicial (start value) será sempre somado ao número randômico. • O limite superior, ou alcance (range) será sempre o limite superior subtraído o limite inferior e depois multiplicado ao número randômico. Por exemplo, se quisermos que um número randômico sempre fique entre 5 e 10, procederíamos da seguinte maneira: O menor número possível é 5, portanto ele será nosso start value ou limite inferior. O maior número possível é 10, então 10 será nosso limite superior. Como temos ambos os limites (inferior e superior) devemos criar um alcance (range). Para http://www.tiexpert.net/programacao/java/math.php
  • 4. www.tiexpert.net Pág. 4 de 4 obtermos isso, subtrairemos o limite superior com o limite inferior (10-5=5). public class Exemplo { public static void main(String[] args) { int limiteInferior = 5; int limiteSuperior = 10; int alcance = limiteSuperior - limiteInferior; double nrRandomico = Math.random(); System.out.println("O número randômico escolhido entre 5 e 10 foi " + Math.round(limiteInferior + nrRandomico * alcance)); } } Autor: Denys William Xavier Este artigo está sob Licença Creative Commons Para ver uma cópia desta licença, visite http://creativecommons.org/licenses/by-nc-sa/2.5/br/ ou envie uma carta para Creative Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA. http://www.tiexpert.net/programacao/java/math.php