C# 10 - Novidades da API Math
Hoje vou apresentar as novidades da API Math disponíveis a partir do C# 10. |
Para surpresa, o C# 10 trouxe novos recursos para a API Math, que geralmente não sofre alterações.
As novidades referem-se aos seguintes recursos:
Calculando Seno e Cosseno
Vamos criar um projeto Console (.NET Core) no VS 2022 e definir o código abaixo na classe Program:
Vamos calcular o seno e cosseno de um ângulo usando o método Math.SinCos:
Console.WriteLine("Cálculo do Seno
e Cosseno\n"); Console.WriteLine("Informe o ângulo para calcular o: "); var angulo = Convert.ToDouble(Console.ReadLine()); var resultado = Math.SinCos(angulo); Console.WriteLine($"Valor do Seno : {resultado.Sin}"); Console.WriteLine($"Valor do Cosseno : {resultado.Cos}\n"); Console.ReadKey(); |
O resultado obtido é o seguinte:
Calculando a estimativa do recíproco de um número
Os recíprocos em matemática são inversos multiplicativos. Dois números são inversos se, quando multiplicados juntos, o produto for igual a 1; por exemplo, o recíproco de 2 é 1/2, porque 2 X 1/2 = 1.
Assim o recíproco de 5 é 1/5 que é igual a 0,2.
O recíproco de uma fração, ou número racional, é este número com o denominador ou numerador trocado. Então, o recíproco de 2/3 é 3/2.
O recíproco de um número irracional é 1 dividido por aquele número e, se o número é expresso com expoentes, o recíproco é expresso pelo mesmo número e o expoente, mas com o sinal do expoente trocado. Então, o inverso de 2^0.5 é 2^-0.5.
Vamos calcular a estimativa do recíproco de um número usando o método Math.ReciprocalEstimate.
Inclua o código abaixo na classe Program:
Console.WriteLine("Cálculo da estimativa do recíproco de um número\n");
Console.WriteLine("Informe o número a calcular : ");
var numero = Convert.ToDouble(Console.ReadLine());
var resultado = Math.ReciprocalEstimate(numero);
Console.WriteLine($"O valor obtido é igual a : {resultado}");
Console.ReadKey();
|
O resultado obtido é visto a seguir:
Calculando a estimativa da raiz quadrada recíproca de um número especificado
t
Console.WriteLine("Cálculo da estimativa da raiz quadrada recíproca de um número\n");
Console.WriteLine("Informe o número a calcular : ");
var numero = Convert.ToDouble(Console.ReadLine());
var resultado = Math.ReciprocalSqrtEstimate(numero);
Console.WriteLine($"O valor obtido é igual a : {resultado}");
Console.ReadKey();
|
O resultado obtido é :
Além destes novos métodos temos uma outra novidade relacionada com o método Math,DivRem que já existia e que calcula o quociente de dois números e também retorna o resto em um parâmetro de saída.
Ele foi aprimorado ainda mais no .NET 6 - em vez de retornar o restante como um parâmetro de saída, o método retorna uma tupla do quociente e o restante.
Exemplo:
Console.WriteLine("Informe um
numero: "); var numero1 = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("\nInforme
outro numero: "); var
resultado = Math.DivRem(numero1, numero2); Console.ReadKey(); |
Resultado:
a
mos conversados...
Referências:
C# - O Struct Guid - Macoratti.net
DateTime - Macoratti.net
Formatação de data e hora para uma cultura ...
Visual Studio - Dica de produtividade - Nuget
Visual Studio - Dica de produtividade - Quick .
C# - Calculando a diferença entre duas datas
C# - Fundamentos : Definindo DateTime como Null ...
Visual Studio - Dicas de Produtividade VI