Como já visto anteriormente em outras páginas, existem vários processos em um algoritmo que podemos simplesmente determinar como operações matemáticas ou cálculos sendo executados pelo nosso programa.
Levando para a questão realmente matemática, em C existe uma biblioteca própria para cálculos matemáticos um pouco mais complexos, a biblioteca ao qual nos referimos é a math.h, que tem seu correspondente em C++ como cmath.
Com a biblioteca math.h (cmath) podemos encontrar facilmente funções para calcular potências, raíz quadrada, funções trigonométricas para cálculos que envolvem seno, co-seno e tangente, além de constantes para números irracionais como, por exemplo, PI (Π) e √2.
Vamos iniciar listando as constantes matemáticas:
Simbologia | O que é | Constante em C/C++ | valor da constante em C/C++ |
---|---|---|---|
e | Número de Euler | M_E | 2,7182818284590452354 |
log2 e | Logaritmo de e na base 2 | M_LOG2E | 1,4426950408889634074 |
log10 e | Logaritmo de e na base 10 | M_LOG10E | 0,43429448190325182765 |
Ln2 (x) | Logaritmo neperiano binário | M_LN2 | 0,69314718055994530942 |
Ln10 (x) | Logaritmo neperiano ou natural | M_LN10 | 2,30258509299404568402 |
Π | Pi | M_PI | 3,14159265358979323846 |
Π/2 | Meio Pi | M_PI_2 | 1,57079632679489661923 |
Π/4 | Quarto de Pi | M_PI_4 | 0,78539816339744830962 |
√2 | Raiz quadrada de 2 | M_SQRT2 | 1,41421356237309504880 |
√½ | Raiz quadrada de meio | M_SQRT1_2 | 0,70710678118654752440 |
Como podemos ver, todas as constantes são valores do tipo double. E isso se reflete nas funções.
Trigonométricas
sin (): Retorna o valor do seno. Recebe como argumento o valor dos graus em double.
cos (): Retorna o valor do co-seno. Recebe como argumento o valor dos graus em double.
tan (): Retorna o valor da tangente. Recebe como argumento o valor dos graus em double.
Logaritmicas
log (): Retorna o valor do logaritmo na base 2. Exige um argumento do tipo double.
log10 (): Retorna o valor do logaritmo na base 10. Exige um argumento do tipo double.
Potências
pow (): Retorna o valor da base elevada ao expoente. Recebe dois argumentos do tipo double, o primeiro é a base e o segundo o expoente. Por exemplo: se quisermos saber o resultado da operação 210, faríamos pow (2, 10).
sqrt (): Retorna o valor da raiz quadrada. Recebe como argumento um double do qual ele deve extrair a raiz.
Arredondamento
ceil(): Retorna o primeiro float sem casas decimais acima. Recebe um float como argumento. Exemplo: ceil (45.98561) resultaria em 46.
floor(): Retorna o primeiro float sem casas decimais abaixo. Recebe um float como argumento. Exemplo: floor (45.98561) resultaria em 45.
Para ilustrar todas essas funções e constantes, abaixo está um código demonstrando o resultado de cada função da biblioteca math.h (cmath) vista neste artigo.