Você está na página 1de 12

Tcnico em Informtica

Estrutura de Dados

Funes Matemticas
Alex Helder Cordeiro de Oliveira
Instituto Federal de Braslia -

Campus

Braslia

2 semestre de 2013

Alex Helder (IFB)

EDD - Funes Matemticas

2013/2

1 / 12

Funes Matemticas

Uma das aplicaes mais comuns da informtica a resoluo de


clculos ou processamentos matemticos.
muito comum as linguagens de programao (especialmente as
estruturadas ou orientadas a objetos) terem bibliotecas para realizao
de funes matemticas.
Em C, a biblioteca padro para as funes matemticas a

<math.h>.

Alex Helder (IFB)

2013/2

EDD - Funes Matemticas

2 / 12

Funes da biblioteca

<Math.h>

Dentre outras, sero encontradas as seguintes funes matemticas:

ceil arredondamento para cima;


floor arredondamento para baixo;
fabs valor absoluto (retira o sinal do valor);
sqrt raz quadrada;
pow potncia (faz o primeiro argumento elevado
exp nmero de Euler e elevado ao argumento;
log logaritmo natural do argumento;
log10 logaritmo na base 10.

ao segundo);

Os argumentos e retornos das funes matemticas so do tipo

double.

Alex Helder (IFB)

EDD - Funes Matemticas

2013/2

3 / 12

Funes da biblioteca

<Math.h>

Tambm so encontradas aqui as funes trigonomtricas:

sin;
cos;
tan;
sinh;
cosh;
tanh;
asin;
acos;
atan;
atan2.
Os ngulos so denidos em radianos.

Alex Helder (IFB)

EDD - Funes Matemticas

2013/2

4 / 12

Rodei no Linux e no achou a funo apesar do

include!

Era muito comum, os programadores quererem usar sua prpria


implementao das funes matemticas.
Para facilitar esta opo, historicamente, os compiladores costumaram
no fazer o  linking  da biblioteca
Para acrescentar

linkar

libm.so.

esta biblioteca durante a compilao, use a

-lm no comando de compilao:


gcc codigo.c -o programa -lm

opo

Alex Helder (IFB)

EDD - Funes Matemticas

2013/2

5 / 12

Rodei no Linux e no achou a funo apesar do

include!

Mas eu uso o Netbeans.... como fao para no precisar usar a linha de


comando?
1

Clique com o boto direito sobre o projeto;

Clique em

3
4
5

Propriedades;
Na opo Vinculador, clique em Bibliotecas;
Clique em Adicionar Biblioteca Padro;
Escolha a biblioteca Matemtica.

Alex Helder (IFB)

EDD - Funes Matemticas

2013/2

6 / 12

Como calcular outras razes diferentes de 2?

Elevando a nmeros fracionrios.

b bx

Exemplo: Realizando a raz quarta de 81:

double raiz = pow(81, 1.0/4);

Alex Helder (IFB)

EDD - Funes Matemticas

2013/2

7 / 12

Como calcular logaritmos em outras bases?

Efetuando a diviso dos logaritmos:

logx a
Exemplo: Calcular o

log2

logq a
logq x

de 512:

double resultado = log(512)/log(2);

Alex Helder (IFB)

EDD - Funes Matemticas

2013/2

8 / 12

Como realizar clculos trigonomtricos com graus?

Lembrando que pode ser feita uma converso atravs da frmula:

180 = radianos
Em outras palavras, multiplique o valor em graus por 3.14159265359 e
divida por 180.
Exemplo: Calcular o seno de 30:

double resultado = sin(30*3.14159265359/180);

Alex Helder (IFB)

EDD - Funes Matemticas

2013/2

9 / 12

Sua Vez...

(1.0 pontos) - Questo 12:

Implemente um programa que auxilie os

prossionais de qumica a estimarem a quantidade de substncia radioativa


que permanece no decorrer do tempo. O usurio deve entrar a quantidade
inicial da substncia, a taxa de desintegrao da substncia e o tempo que
se passou; e deve apresentar ao usurio a quantidade que ainda sobrou da
substncia.
Utilize a seguinte expresso

Q = Qo ert
, onde

a massa nal,

Qo

a massa inicial,

a taxa e

o tempo em

anos.

Alex Helder (IFB)

EDD - Funes Matemticas

2013/2

10 / 12

Sua Vez...

(1.0 pontos) - Questo 13:

Implemente um programa que auxilie os

prossionais de qumica a estimarem o tempo necessrio para desintegrar


uma determinada parcela de substncias radioativas. O usurio deve inserir
a quantidade inicial da substncia, quantidade nal e a taxa de
desintegrao da substncia. O sistema deve calcular quanto tempo leva
para para a quantidade inicial reduzir quantidade nal.
Utilize a seguinte expresso:

t=
, onde

a massa nal,

Qo

ln( QQo )
r

a massa inicial,

a taxa e

o tempo em

anos.

Alex Helder (IFB)

EDD - Funes Matemticas

2013/2

11 / 12

Sua Vez...

(1.0 pontos) - Questo 14:

Implemente um programa para o clculo de

lanamento de projteis. O usurio deve inserir a velocidade de lanamento


do projtil e o ngulo de lanamento, e o programa deve apresentar a
altura mxima atingida e a distncia mxima alcanada. Considere a
acelerao da gravidade como sendo

, onde

V0

10m/s2 .

Use as seguintes frmulas:

D=

V02 sen(2)
g

H=

V02 sen2 ()
2g

a distncia mxima alcanada,

a velocidade de lanamento,

a altura mxima atingida,

o ngulo de lanamento e

acelerao da gravidade.

Alex Helder (IFB)

EDD - Funes Matemticas

2013/2

12 / 12