22.10.2014 Views

Aprendendo a Programar Programando em Linguagem C - FSM

Aprendendo a Programar Programando em Linguagem C - FSM

Aprendendo a Programar Programando em Linguagem C - FSM

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

x = y;<br />

y = Aux;<br />

printf("Saida x = %0.2f, y = %0.2f \n", x, y);<br />

}<br />

Cabe observar que a permuta dos conteúdos pode ser obtida s<strong>em</strong> a utilização da variável Aux. Isto é<br />

deixado para que o leitor descubra a solução, sendo apresentado como exercício proposto.<br />

2.11 Funções de biblioteca<br />

Como diss<strong>em</strong>os na seção 2.5, os compiladores C oferec<strong>em</strong> diversas funções com objetivos prédeterminados<br />

e que pod<strong>em</strong> ser executadas durante a execução de um programa. Para isto a execução da<br />

função deve ser solicitada no programa como uma instrução, como operando de uma expressão ou como<br />

argumento de outra função (a solicitação da execução de uma função é normalmente chamada de ativação ou<br />

chamada da função). Para que o programador possa colocar no seu programa uma instrução que ative uma<br />

função é necessário que ele conheça o identificador da função, quantos e de que tipo são os argumentos com<br />

que elas dev<strong>em</strong> ser ativadas e o tipo de valor que ela retorna ao programa quando termina sua execução<br />

(como já foi dito, este conjunto constitui o protótipo da função). A definição de uma função pré-definida se<br />

faz através da seguinte sintaxe.<br />

Identificador da função(Lista de argumentos)<br />

sendo que a lista de argumentos pode ser vazia. A tabela a seguir apresenta algumas das funções prédefinidas<br />

dos compiladores C, indicando o tipo dos seus argumentos e comentando o seu valor de retorno.<br />

Tabela 12 Algumas funções de biblioteca<br />

Identificador Argumentos O que retorna<br />

fabs(x) double Valor absoluto do argumento x<br />

acos(x) double Arco cujo valor do co-seno é o argumento x<br />

asin(x) double Arco cujo valor do seno é o argumento x<br />

atan(x) double Arco cujo valor da tangente é o argumento x<br />

cos(x) double Co-seno do argumento x<br />

log(x) double Logaritmo natural do argumento x<br />

log10(x) double Logaritmo decimal do argumento x<br />

pow(x, y) double, double Argumento x elevado ao argumento y<br />

pow10(x) int 10 elevado ao argumento x<br />

random(x) int Um número aleatório entre 0 e x - 1<br />

sin(x) double Seno do argumento x<br />

sqrt(x) double Raiz quadrada do argumento x<br />

tan(x) doublé Tangente do argumento x<br />

tolower(x) char Converte o caractere x para minúsculo<br />

toupper(x) char Converte o caractere x para maiusculo<br />

O protótipo da função random() se encontra no arquivo stdlib.h e os protótipos das funções tolower() e<br />

toupper() estão no arquivo ctype.h. Os protótipos das outras funções estão no arquivo math.h que, como seu<br />

nome indica, contém os protótipos das funções mat<strong>em</strong>áticas. Para que a função random() seja ativada é<br />

necessário que sua ativação seja precedida pela ativação da função randomize() que ativa o gerador de<br />

número aleatório. Por ex<strong>em</strong>plo, o programa abaixo exibirá um número aleatório entre 0 e 99.<br />

/* programa que exibe, aleatoriamente, um número entre 0 e 99 */<br />

#include <br />

#include <br />

main()<br />

{<br />

int x;<br />

randomize();<br />

x = random(100);

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!