NUNCA MAIS PASSE RAIVA POR NÃO CONSEGUIR RESOLVER UM PROBLEMA COM O EXCEL - GARANTIDO!
UNIVERSIDADE DO VBA - Domine o VBA no Excel Criando Sistemas Completos - Passo a Passo - CLIQUE AQUI
« Lição anterior | Δ Página principal | ¤ Capítulos | Próxima lição » |
ASP.NET - CURSO COMPLETO Autor: Júlio Battisti |
|||
---|---|---|---|
Lição 037 - Capítulo 05 - A classe System.Math - operações matemáticas | |||
A classe System.Math fornece métodos para operações trigonométricas, logarítmicas e outras funções comumente utilizadas na matemática. Além dos métodos temos duas propriedades, as quais serão descritas na seqüência. Campos da classe System.Math. Temos dois campos, conforme descrito a seguir.
Vamos apresentar um exemplo que ilustra a utilização da classe System.Math e dos campos E e PI. Observe o exemplo da Listagem 5.1. using System; class ex1cap5 { // Exemplo1 - Capítulo 5. // Campos da classe System.Math. // Por: Júlio Battisti // MCP, MCP+I, MCSE, MCSE+I, MCSE, MCDBA public static void Main() { // Exibição dos valores dos campos E e PI. Console.WriteLine("****************************************"); Console.WriteLine("VALOR DO CAMPO E -> {0}",Math.E); Console.WriteLine("VALOR DO CAMPO PI -> {0}",Math.PI); Console.WriteLine("****************************************"); } } Listagem 5.1 – Campos da classe System.Math – ex1cap5.cs Digite o exemplo da listagem 5.1 e salve o mesmo em um arquivo chamado ex1cap5.cs, na pasta C:\ExCsharp\cap5. Compile e execute o exemplo da listagem 5.1. Você obterá os resultados indicados na Figura 5.1.
Como a classe Math faz parte do namespace System, simplesmente utilizamos Math.E para fazer referência ao campo E da classe Math. O mesmo é válido para o campo PI. Se utilizarmos a nomenclatura completa, conforme indicado no trecho de código a seguir, o resultado será o mesmo: Console.WriteLine("VALOR DO CAMPO E -> {0}",System.Math.E); Console.WriteLine("VALOR DO CAMPO PI -> {0}",System.Math.PI); Métodos da classe System.Math. Neste tópico trataremos dos diversos métodos da classe System.Math. Método Abs – System.Math.Abs(número): Este método retorna o valor absoluto do número, ou seja, o módulo do número passado como parâmetro. O número passado como parâmetro pode ser de um dos seguintes tipos: Decimal, Double, Int16, Int32, Int64, SByte ou Single. Ex: System.Math.Abs(-32.15) retorna 32,15. Método Acos – System.Math.Acos(número): Este método retorna o valor do ângulo em que o coseno é o número passado como parâmetro. O valor passado como parâmetro deve estar no intervalo de –1 até +1, que são os valores válidos para o coseno. O valor do ângulo retornado está em radianos. Em termos de radianos, 3,14 radianos equivalem a 180 graus. Para converter de radiano para graus é só utilizar a seguinte fórmula: valor_em_graus = (valor_em_radianos*180)/PI Ex: System.Math.Acos(-1) Vamos a um exemplo completo onde utilizamos os métodos Abs e Acos. Considere o exemplo da Listagem 5.2 using System; class ex2cap5 { // Exemplo2 - Capítulo 5. // Métodos da classe System.Math. // Por: Júlio Battisti // MCP, MCP+I, MCSE, MCSE+I, MCSE, MCDBA public static void Main() { // Exibição dos valores dos campos E e PI. Console.WriteLine("*************************************************"); Console.WriteLine("VALOR ABSOLUTO DE -32.10 -> {0}",Math.Abs(-32.10)); Console.WriteLine("*************************************************"); Console.WriteLine("UTILIZAÇÃO DO MÉTODO ACOS"); Console.WriteLine("*************************************************"); Console.WriteLine("ÂNGULO PARA COS = -1 -> {0}",Math.Acos(-1)); Console.WriteLine("ÂNGULO PARA COS = -0,5 -> {0}",Math.Acos(-0.5)); Console.WriteLine("ÂNGULO PARA COS = 0 -> {0}",Math.Acos(0)); Console.WriteLine("ÂNGULO PARA COS = 0.5 -> {0}",Math.Acos(0.5)); Console.WriteLine("ÂNGULO PARA COS = 1 -> {0}",Math.Acos(1)); Console.WriteLine("*************************************************"); Console.WriteLine("*************************************************"); Console.WriteLine("CONVERSÃO DOS ÂNGULOS PARA GRAUS"); Console.WriteLine("*************************************************"); Console.WriteLine("ÂNGULO PARA COS = -1 -> {0}",((Math.Acos(-1)*180)/Math.PI)); Console.WriteLine("ÂNGULO PARA COS = -0,5 -> {0}",((Math.Acos(-0.5)*180)/Math.PI)); Console.WriteLine("ÂNGULO PARA COS = 0 -> {0}",((Math.Acos(0)*180)/Math.PI)); Console.WriteLine("ÂNGULO PARA COS = 0.5 -> {0}",((Math.Acos(0.5)*180)/Math.PI)); Console.WriteLine("ÂNGULO PARA COS = 1 -> {0}",((Math.Acos(1)*180)/Math.PI)); Console.WriteLine("*************************************************"); } } Listagem 5.2 – Métodos Abs e Acos da classe Math – ex2cap5.cs Neste exemplo primeiro exibimos os valores dos ângulos em radianos, depois utilizamos a fórmula para conversão de radianos para graus, que é simplesmente multiplicar por 180 e dividir por PI. Observe que para obter o valor do PI utilizamos o campo PI da classe System.Math. Digite o exemplo da listagem 5.2 e salve o mesmo em um arquivo chamado ex2cap5.cs, na pasta C:\ExCsharp\cap5. Compile e execute o exemplo da listagem 5.2. Você obterá os resultados indicados na Figura 5.2.
Método Asin – System.Math.Asin(número): Este método retorna o valor do ângulo em que o seno é o número passado como parâmetro. O valor passado como parâmetro deve estar no intervalo de –1 até +1, que são os valores válidos para o seno. O valor do ângulo retornado está em radianos. Em termos de radianos, 3,14 radianos equivalem a 180 graus. Para converter de radiano para graus é só utilizar a seguinte fórmula: valor_em_graus = (valor_em_radianos*180)/PI Ex: System.Math.Asin(-1) Se no exemplo da Listagem 5.2, simplesmente trocássemos Acos por Asin, obteríamos os resultados indicados na Figura 5.3.
Método Atan – System.Math.Atan(número): Este método retorna o valor do ângulo em que a tangente é o número passado como parâmetro. O valor do ângulo retornado está em radianos. Ex: System.Math.Atan(0) Método Atan2 – System.Math.Atan2(número,número): Este método retorna o valor do ângulo em que a tangente é igual a divisão dos dois números passados como parâmetros. O valor do ângulo retornado está em radianos. Ex: System.Math.Atan2(6,2) retorna 1,24904577239825 radiano Método Ceiling – System.Math.Ceiling(número): Este método retorna o menor número inteiro que é igual ou maior do que o número passado como parâmetro. O valor do parâmetro é do tipo double. Ex: System.Math.Ceiling(2.3498) retorna 3 Método Cos – System.Math.Cos(valor em radianos): Este método retorna o coseno do valor que foi passado como parâmetro. O valor do parâmetro deve estar em radianos. Por exemplo, ao invés de 180 graus informamos 3,14 radianos (PI radianos). Nos exemplos a seguir utilizamos o campo PI para passar os valores em radianos para o método Cos. Ex: System.Math.Cos(Math.PI) retorna -1 Método Exp – System.Math.Exp(número): Este método retorna o número e (Math.E) elevado no expoente passado como parâmetro. Ex: System.Math.Exp(2) retorna 7,38905609893065 Método Floor – System.Math.Floor(número): Este método retorna o maior número inteiro que é igual ou menor do que o número passado como parâmetro. O valor do parâmetro é do tipo double. Ex: System.Math.Floor(2.3498) retorna 2 Método IEEERemainder – System.Math. IEEERemainder(x,y): Este método retorna o resto da divisão de x por y. Ex: System.Math. IEEERemainder(10,4) retorna 2 Método Log – System.Math. Log(número) ou System.Math.Log(número,base): Se o método Log receber um único parâmetro, irá retornar o logaritmo natural (na base e) do número passado como parâmetro. Também podemos passar dois parâmetros, neste caso o primeiro parâmetro é o número e o segunda a base. Ex: System.Math. Log(10) retorna 2,30258509299405 Método Log10 – System.Math. Log10(número): O método Log recebe retorna o logaritmo na base 10, do número passado como parâmetro. Ex: System.Math. Log10(10) retorna 1 Método Max – System.Math.Max(número,número): Este método retorna o maior valor dentre dois valores passados como parâmetros. Os dois valores devem ser do mesmo tipo. Os tipos permitidos são os seguintes: Byte, Decimal, Double, Int16, Int32, Int64, SByte, Single, UInt16, UInt32 ou UInt64. Ex: System.Math.Max(-5.-6) retorna -5 Método Min – System.Math.Min(número,número): Este método retorna o menor valor dentre dois valores passados como parâmetros. Os dois valores devem ser do mesmo tipo. Os tipos permitidos são os seguintes: Byte, Decimal, Double, Int16, Int32, Int64, SByte, Single, UInt16, UInt32 ou UInt64. Ex: System.Math.Min(-5.-6) retorna -6 Método Pow – System.Math.Pow(x,y): Este método retorna o número x elevado no expoente y. Ex: System.Math.Pow(2.2) retorna 4 Método Round – System.Math.Round(número) ou System.Math.Round(número,precisão): Este método faz o arredondamento para o inteiro mais próximo ou para um número da casas decimais especificado. O parâmetro número pode ser do tipo Double ou do tipo Decimal. O parâmetro precisão, se especificado, deve ser do tipo Int32 e define o número de casas decimais. Ex: System.Math.Round(2.49) retorna 2 Método Sin – System.Math.Sin(valor em radianos): Este método retorna o seno do valor que foi passado como parâmetro. O valor do parâmetro deve estar em radianos. Por exemplo, ao invés de 180 graus informamos 3,14 radianos (PI radianos). Nos exemplos a seguir utilizamos o campo PI para passar os valores em radianos para o método Sin. Ex: System.Math.Sin(Math.PI/2) retorna 1 Método Sign – System.Math.Sign(número): Este método retorna um valor indicando o sinal do número passado como parâmetro. O número passado como parâmetro pode ser de um dos seguintes tipos: Decimal, Double, Int16, Int32, Int64, SByte ou Single. Ex: System.Math.Sign(-32.15) retorna -1 Método Sqrt – System.Math.Sqrt(número): Este método retorna a raiz quadrada do número passado como parâmetro. Ex: System.Math.Sqrt(25) retorna 5 Método Tan – System.Math.Tan(valor em radianos): Este método retorna a tangente do valor que foi passado como parâmetro. O valor do parâmetro deve estar em radianos. Por exemplo, ao invés de 180 graus informamos 3,14 radianos (PI radianos). Nos exemplos a seguir utilizamos o campo PI para passar os valores em radianos para o método Tan. Ex: System.Math.Tan(Math.PI/3) retorna 1,73205080756888 Importante: Não existe a tangente para valores onde o coseno vale 0. Para 90 (PI/2) e 270 graus (3PI/2) não existe o valor da tangente. Vamos a um exemplo completo onde utilizamos todos os métodos matemáticos apresentados neste item. Considere o exemplo da Listagem 5.3 using System; class ex3cap5 { // Exemplo 3 - Capítulo 5. // Campos e Métodos da classe System.Math. // Por: Júlio Battisti // MCP, MCP+I, MCSE, MCSE+I, MCSE, MCDBA public static void Main() { // Exibição dos valores dos campos E e PI. Console.WriteLine("*************************************************"); Console.WriteLine("VALOR ABSOLUTO DE -32.10 -> {0}",Math.Abs(-32.10)); Console.WriteLine("*************************************************"); Console.WriteLine("UTILIZAÇÃO DO MÉTODO Asin"); Console.WriteLine("*************************************************"); Console.WriteLine("ÂNGULO PARA SIN = -1 -> {0}",Math.Asin(-1)); Console.WriteLine("ÂNGULO PARA SIN = -0,5 -> {0}",Math.Asin(-0.5)); Console.WriteLine("ÂNGULO PARA SIN = 0 -> {0}",Math.Asin(0)); Console.WriteLine("ÂNGULO PARA SIN = 0.5 -> {0}",Math.Asin(0.5)); Console.WriteLine("ÂNGULO PARA SIN = 1 -> {0}",Math.Asin(1)); Console.WriteLine("*************************************************"); Console.WriteLine("*************************************************"); Console.WriteLine("CONVERSÃO DOS ÂNGULOS PARA GRAUS"); Console.WriteLine("*************************************************"); Console.WriteLine("ÂNGULO PARA SIN = -1 -> {0}",((Math.Asin(-1)*180)/Math.PI)); Console.WriteLine("ÂNGULO PARA SIN = -0,5 -> {0}",((Math.Asin(-0.5)*180)/Math.PI)); Console.WriteLine("ÂNGULO PARA SIN = 0 -> {0}",((Math.Asin(0)*180)/Math.PI)); Console.WriteLine("ÂNGULO PARA SIN = 0.5 -> {0}",((Math.Asin(0.5)*180)/Math.PI)); Console.WriteLine("ÂNGULO PARA SIN = 1 -> {0}",((Math.Asin(1)*180)/Math.PI)); Console.WriteLine("*************************************************"); Console.WriteLine("ANGULO PARA TAN = 3 -> {0}",Math.Atan2(6,2)); Console.WriteLine("ANGULO PARA TAN = 2 -> {0}",Math.Atan2(4,2)); Console.WriteLine("*************************************************"); Console.WriteLine("ARREDONDA UTILIZ. Ceiling -> {0}",Math.Ceiling(2.3498)); Console.WriteLine("ARREDONDA UTILIZ. Ceiling -> {0}",Math.Ceiling(-2.3498)); Console.WriteLine("ARREDONDA UTILIZ. Ceiling -> {0}",Math.Ceiling(5.0001)); Console.WriteLine("ARREDONDA UTILIZ. Ceiling -> {0}",Math.Ceiling(-1.9999)); Console.WriteLine("*************************************************"); Console.WriteLine("COSENO PARA 180 graus PI-> {0}",Math.Cos(Math.PI)); Console.WriteLine("COSENO PARA 0 graus -> {0}",Math.Cos(0)); Console.WriteLine("*************************************************"); Console.WriteLine("e elevado ao quadrado-> {0}",Math.Exp(2)); Console.WriteLine("e elevado na zero -> {0}",Math.Exp(0)); Console.WriteLine("*************************************************"); Console.WriteLine("ARREDONDA UTILIZ. Floor -> {0}",Math.Floor(2.3498)); Console.WriteLine("ARREDONDA UTILIZ. Floor -> {0}",Math.Floor(-2.3498)); Console.WriteLine("ARREDONDA UTILIZ. Floor -> {0}",Math.Floor(5.0001)); Console.WriteLine("ARREDONDA UTILIZ. Floor -> {0}",Math.Floor(-1.9999)); Console.WriteLine("*************************************************"); Console.WriteLine("RESTO DA DIVISÃO 10/4 -> {0}",Math.IEEERemainder(10,4)); Console.WriteLine("RESTO DA DIVISÃO 250/6 -> {0}",Math.IEEERemainder(250,6)); Console.WriteLine("RESTO DA DIVISÃO 10/5 -> {0}",Math.IEEERemainder(10,5)); Console.WriteLine("*************************************************"); Console.WriteLine("LOGARITMO NATURAL DE 10 -> {0}",Math.Log(10)); Console.WriteLine("LOG DE 100 NA BASE 10 -> {0}",Math.Log(100,10)); Console.WriteLine("LOG DE 16 NA BASE 2 -> {0}",Math.Log(16,2)); Console.WriteLine("*************************************************"); Console.WriteLine("LOGARITMO DE 10 -> {0}",Math.Log10(10)); Console.WriteLine("LOGARITMO DE 100 -> {0}",Math.Log10(100)); Console.WriteLine("LOGARITMO DE 1000 -> {0}",Math.Log10(1000)); Console.WriteLine("*************************************************"); Console.WriteLine("MÁXIMO ENTRE -5 E -6 -> {0}",Math.Max(-5,-6)); Console.WriteLine("MÁXIMO ENTRE 5 E 6 -> {0}",Math.Max(5,6)); Console.WriteLine("*************************************************"); Console.WriteLine("MÍNIMO ENTRE -5 E -6 -> {0}",Math.Min(-5,-6)); Console.WriteLine("MÍNIMO ENTRE 5 E 6 -> {0}",Math.Min(5,6)); Console.WriteLine("*************************************************"); Console.WriteLine("2 ELEVADO NA 2 -> {0}",Math.Pow(2,2)); Console.WriteLine("2 ELEVADO NA 3 -> {0}",Math.Pow(2,3)); Console.WriteLine("2 ELEVADO NA 4 -> {0}",Math.Pow(2,4)); Console.WriteLine("5 ELEVADO NA 2 -> {0}",Math.Pow(5,2)); Console.WriteLine("*************************************************"); Console.WriteLine("ROUND EM 2,49 -> {0}",Math.Round(2.49)); Console.WriteLine("ROUND EM 2,4599 -> {0}",Math.Round(2.4599)); Console.WriteLine("10,4987564 COM 3 CASAS -> {0}",Math.Round(10.4987564,3)); Console.WriteLine("*************************************************"); Console.WriteLine("SENO PARA 90 graus PI/2-> {0}",Math.Sin(Math.PI/2)); Console.WriteLine("SENO PARA 0 graus -> {0}",Math.Sin(0)); Console.WriteLine("*************************************************"); Console.WriteLine("SINAL PARA -32,15 -> {0}",Math.Sign(-32.15)); Console.WriteLine("SINAL PARA 32,15 -> {0}",Math.Sign(32.15)); Console.WriteLine("*************************************************"); Console.WriteLine("RAIZ QUADRADA DE 25 -> {0}",Math.Sqrt(25)); Console.WriteLine("RAIZ QUADRADA DE 144 -> {0}",Math.Sqrt(144)); Console.WriteLine("*************************************************"); Console.WriteLine("TANENTE PARA 60 graus PI-> {0}",Math.Tan(Math.PI/3)); Console.WriteLine("TANENTE PARA 0 graus -> {0}",Math.Tan(0)); } } Listagem 5.3 – Métodos da classe Math – ex3cap5.cs Digite o exemplo da listagem 5.3 e salve o mesmo em um arquivo chamado ex3cap5.cs, na pasta C:\ExCsharp\cap5. Compile e execute o exemplo da listagem 5.3. Obteremos os resultados indicados a seguir: SAÍDA DO PROGRAMA ex3cap5.exe: ************************************************* VALOR ABSOLUTO DE -32.10 -> 32,1 ************************************************* UTILIZAÇÃO DO MÉTODO Asin ************************************************* ÂNGULO PARA SIN = -1 -> -1,5707963267949 ÂNGULO PARA SIN = -0,5 -> -0,523598775598299 ÂNGULO PARA SIN = 0 -> 0 ÂNGULO PARA SIN = 0.5 -> 0,523598775598299 ÂNGULO PARA SIN = 1 -> 1,5707963267949 ************************************************* CONVERSÃO DOS ÂNGULOS PARA GRAUS ************************************************* ÂNGULO PARA SIN = -1 -> -90 ÂNGULO PARA SIN = -0,5 -> -30 ÂNGULO PARA SIN = 0 -> 0 ÂNGULO PARA SIN = 0.5 -> 30 ÂNGULO PARA SIN = 1 -> 90 ************************************************* ÂNGULO PARA TAN = 3 -> 1,24904577239825 ÂNGULO PARA TAN = 2 -> 1,10714871779409 ************************************************* ARREDONDA UTILIZ. Ceiling -> 3 ARREDONDA UTILIZ. Ceiling -> -2 ARREDONDA UTILIZ. Ceiling -> 6 ARREDONDA UTILIZ. Ceiling -> -1 ************************************************* COSENO PARA 180 graus PI-> -1 COSENO PARA 0 graus -> 1 ************************************************* ************************************************* e elevado ao quadrado -> 7,38905609893065 e elevado na zero -> 1 ************************************************* ARREDONDA UTILIZ. Floor -> 2 ARREDONDA UTILIZ. Floor -> -3 ARREDONDA UTILIZ. Floor -> 5 ARREDONDA UTILIZ. Floor -> -2 ************************************************* RESTO DA DIVISÇO 10/4 -> 2 RESTO DA DIVISÇO 250/6 -> 4 RESTO DA DIVISÇO 10/5 -> 0 ************************************************* LOGARITMO NATURAL DE 10 -> 2,30258509299405 LOG DE 100 NA BASE 10 -> 2 LOG DE 16 NA BASE 2 -> 4 ************************************************* LOGARITMO DE 10 -> 1 LOGARITMO DE 100 -> 2 LOGARITMO DE 1000 -> 3 ************************************************* MµXIMO ENTRE -5 E -6 -> -5 MµXIMO ENTRE 5 E 6 -> 6 ************************************************* M¡NIMO ENTRE -5 E -6 -> -6 MÖNIMO ENTRE 5 E 6 -> 5 ************************************************* 2 ELEVADO NA 2 -> 4 2 ELEVADO NA 3 -> 8 2 ELEVADO NA 4 -> 16 5 ELEVADO NA 2 -> 25 ************************************************* ROUND EM 2,49 -> 2 ROUND EM 2,4599 -> 2 10,4987564 COM 3 CASAS -> 10,499 ************************************************* SENO PARA 90 graus PI/2-> 1 SENO PARA 0 graus -> 0 ************************************************* SINAL PARA -32,15 -> -1 SINAL PARA 32,15 -> 1 ************************************************* RAIZ QUADRADA DE 25 -> 5 RAIZ QUADRADA DE 144 -> 12 ************************************************* TANENTE PARA 60 graus PI/3 -> 1,73205080756888 TANENTE PARA 0 graus -> 0 TANENTE PARA 180 graus PI -> 1,63317787283838E+16 |
|||
« Lição anterior | Δ Página principal | ¤ Capítulos | Próxima lição » |
Contato: Telefone: (51) 3717-3796 | E-mail: webmaster@juliobattisti.com.br | Whatsapp: (51) 99627-3434
Júlio Battisti Livros e Cursos Ltda | CNPJ: 08.916.484/0001-25 | Rua Vereador Ivo Cláudio Weigel, 537 - Universitário, Santa Cruz do Sul/RS, CEP: 96816-208
Todos os direitos reservados, Júlio Battisti 2001-2024 ®
LIVRO: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2016 - CURSO COMPLETO E PRÁTICO
DOMINE A PROGRAMAÇÃO VBA NO EXCEL - 878 PÁGINAS - CLIQUE AQUI