Hoje veremos alguns dos métodos menos conhecidos da classe Math que quase nunca usamos |
|
A classe Math definida no namespace System, oferece diversos métodos estáticos e constantes que você pode usar para fazer cálculos trigonométricos, logarítmicos, e outros cálculos matemáticos.
Apenas para constar segue os principais métodos e constantes desta classe :
Função/Constantes | Resultado | Exemplo |
Abs(x) | Fornece Valor absoluto de x |
Abs(4.5) = 4.5; Abs(-4.5) = 4.5; |
Ceiling(x) | Arredonda x para cima |
Ceiling(4.1) = 5; Ceiling(-4.1) = -4; |
Cos(x) | Obtém o cosseno de x | Cos(2.0) = -0.4161...... |
Sin(x) | Obtém o seno de x | Sin(2) = 0.909297... |
Tan(x) | Obtém o valor da Tangente de x | Tan(1.5) =14.1014... |
PI | Obtém o valor de PI | PI = 3.141516171819... |
E | Obtém o valor da constante E | E = 2.7182818284590451 |
Exp(x) | Obtém o exponencial (e elevado na x) | Exp(5.0) =54.59... |
Floor(x) | Arredonda o valor de x para baixo |
Floor(2.9) = 2; Floor(-2.9)) = -3; |
Log(x) | Calcula o logaritmo de x na base natural e | Log(3.0) = 1.098612... |
Log10(x) | Calcula o logaritmo de x na base 10 | Log10(3.0) = 0.47712... |
Max(x,y) | Obtém o maior valor entre dois números |
Max(2.46,2.56) = 2.56; Max(-2.46,-2.56) = 2.46; |
Min(x,y) | Obtém o menor valor entre dois números |
Min(1.92,1.89) = 1.89; Min(-1.92,-1.89) = 1.92; |
Pow(x,y) | Obtém o valor de x elevado na y | Pow(2,4) = 16 |
Round(x,y) | Arredonda x para y casas decimais | Round(7.6758549,4) = 7.6759 |
Sqrt(x) | Obtém a raiz quadrada de x | Sqrt(169) = 13 |
Hoje eu vou mostrar alguns métodos e constantes desta classe que são menos conhecidos. Para aplicar os exemplos vou criar uma aplicação do tipo Console usando o .NET Framework 4.7.
Recursos usados :
Classe Math
1 - As constantes PI e E
A classe Math fornece as constantes e os métodos estáticos para funções logarítmicas, trigonométricas e outras funções matemáticas. Ela contém as constantes definidas como:
A sua utilização esta relacionada com cálculo de limites e derivadas:
2 - Sign
O método
Math.Sign() retorna um inteiro que especifica o
sinal do número. Esse método pode ser sobrecarregado alterando o tipo de
dados dos argumentos transmitidos da seguinte maneira:
- Math.Sign (Decimal): Retorna o inteiro que
especifica o sinal de um número decimal.
- Math.Sign (Double): Retorna o inteiro que
especifica o sinal de um número de ponto flutuante de precisão dupla.
- Math.Sign (Int16): Retorna o inteiro que
especifica o sinal de um inteiro assinado de 16 bits. Aqui Int16 é tipo de
dados short.
- Math.Sign (Int32): Retorna o inteiro que
especifica o sinal de um inteiro assinado de 32 bits. Aqui Int32 é tipo de
dados int.
- Math.Sign (Int64): Retorna o inteiro que
especifica o sinal de um inteiro assinado de 64 bits. Aqui, Int64 é um tipo
de dados long.
- Math.Sign (SByte): Retorna o inteiro que
especifica o sinal de um inteiro assinado de 8 bits.
- Math.Sign (Single): Retorna o inteiro que
especifica o sinal de um número de ponto flutuante de precisão simples. Aqui
single é o tipo de dados float.
Este método retorna um valor do tipo System.Int32 que pode ser:
Exemplo:
3 - IEEERemainder
O método Math.IEEERemainder retorna o restante resultante da divisão de um número especificado por outro número especificado.
Sintaxe:
public static double IEEERemainder (double x, double y);
Este método retorna um número igual a - (b Q), onde Q é o quociente de a / b arredondado para o inteiro mais próximo do tipo System.Double.
Nota:
Obs: NaN (Not a Number) é um valor do tipo de dados numérico que representa um valor indefinido ou irrepresentável, especialmente em cálculos de ponto flutuante.
O método IEEERemainder e o operador Remainder são usados para retornar o restante após a divisão, mas as fórmulas que eles usam são diferentes.
Exemplo:
Abaixo vemos o resultado da execução do código acima:
4 - BigMul
O método Math.BigMul produz o produto completo de dois números de 32 bits.
Sintaxe:
public static long BigMul (int a, int b);
O retorno é do tipo System.Int64.
Exemplo:
5 - DivRem
O método Math.DivRem() divide dois números e retorna o resto da divisão.
Usando o operador de divisão ( / ), não obtemos o restante em uma variável separada, mas usando o método DivRem(), obtemos ambos : o quociente e o resto.
Esse método pode ser sobrecarregado passando diferentes tipos e números de argumentos:
Sintaxe:
public static int DivRem(int a, int b,out int resto)
Parâmetros :
O retorno será o quociente dos números especificados e o resto da divisão.
Considerando:
Exemplo:
Esses são alguns dos métodos e constantes da classe Math que quase nunca usamos.
Pgue o projeto aqui : ClasseMath.zip
'Ora, o homem
natural não compreende as coisas do Espírito de Deus, porque lhe parecem
loucura; e não pode entendê-las, porque elas se discernem espiritualmente.'
1 Coríntios 2:14
Veja os
Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique
e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
Quer aprender os conceitos da Programação Orientada a objetos ? Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ? Quer aprender a criar aplicações Web Dinâmicas usando a ASP .NET MVC 5 ? |
Gostou ? Compartilhe no Facebook Compartilhe no Twitter
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
Visual Studio - Dica de produtividade - Quick Launch - Macoratti.net
Visual Studio - Dica de produtividade - Nuget - Macoratti.net
C# - A classe Math - Macoratti
Funções Matemáticas - Macoratti
Usando alguns métodos do namespace System.Math - Macoratti
C# - Calculando a n-ésima raiz de um número - Macoratti
C# - Calculadora de Empréstimos - EMI - Macoratti
C# - Uma Library para cálculos científicos - Macoratti
C# - 7 recursos da linguagem que talvez você não ... - Macoratti