Upload
vodieu
View
215
Download
0
Embed Size (px)
Citation preview
Faculdade de Engenharia da ComputaçãoDisciplina: Lógica de Programação
Funções Padronizadas na Linguagem de Programação
1
Linguagem de Programação
Site : http://www1.univap.br/~wagner/ec.html
Prof. Responsáveis
Wagner Santos C. de Jesus
Conceito de Funções Funções
Matemáticas
2
Conceito Função
Uma função vem a ser uma relação unívocaentre dois conjuntos. A e B. onde f(x) = y e f onome da função em x.
f(x) = x3
3
Dois conjuntos A,B onde A = x e B = f(x)
4
Comando define
Definindo valores de constantes:
#define PI 3.1415926
#define PI_2 1.5707963#define PI_2 1.5707963
#define PI_4 0.78539815
#define c 300000000
5
Definição de funções padrão da linguagem.
Uma função vem a ser um algoritmo que éexecutados retornando um valor de saída,podendo possuir valores de entrada queeventualmente podem afetar sua saída.eventualmente podem afetar sua saída.
6
Chamada da função
Biblioteca de Funções
Biblioteca de funções Matemáticas
Para se usar funções matemáticas deve-sedisponibilizar a biblioteca: <math.h>
Sintaxe: #include <math.h>
7
Sintaxe das funções Matemáticas
<tipo> <Varm> = Função(<Parâmetros>);
8
Característica de uma função
Toda e qualquer função possuicomportamento endógeno devido acaracterísticas de operações matemáticas.
9
FunçãoExpressão
Aplicação das Funções Matemáticas Básicas da
Linguagem CLinguagem C
10
Função: abs()
Retorna o valor absoluto de um númeropassado como parâmetro.
Sintaxe: <varm> = abs(<ExpN>);Sintaxe: <varm> = abs(<ExpN>);
Exemplo: int x = abs(2-5);
resposta x = 3
11
Função: rint()
Retorna com o valor arredondado de um valor passado como parâmetro.
Expr > 0.5 Arredonda +
Expr < 0.5 Arredonda –Expr < 0.5 Arredonda –
Sintaxe: <varm> = rint(<ExpN>);
Exemplo: int a = rint(4.66);
Resultado a = 5
12
Função ceil()
Arredonda valores sempre para cima.
Sintaxe: <varm> = ceil(<ExpN>);
Exemplo: float m = ceil(3.2);Exemplo: float m = ceil(3.2);
Resultado: m = 4
13
Função sqrt()
Retorna com o valor da raiz quadrada de umnúmero passado como parâmetro.
Expr ≥ 0
Sintaxe: <Varm> = sqrt(<ExpN>);
Exemplo: float y = sqrt(49);
resultado y = 7
14
Função pow()
Retorna o valor de uma base elevado a umdeterminado expoente. X2 = Y.
Sintaxe: <varm> = pow(<ExpN1>,<ExpN2>);Sintaxe: <varm> = pow(<ExpN1>,<ExpN2>);
Exemplo: float x = pow(2,3);
Resultado x = 8
15
Função pow(): Calculo de raízes n
Usando função de calculo de exponencial para calcular araiz n-ésima. Base elevado a n > 0; 1/n
Sintaxe: <varm> = pow(<ExpN1>,1.0/n);
Exemplo Raiz cúbica de 49:Exemplo Raiz cúbica de 49:
float x = pow(49.0,1.0/3.0);
Resultado x = 3.6593
16
Função: log10()
Retorna o logaritmo na base 10 de um valorpassado como parâmetro.
Sintaxe: <Varm> = log10(<ExpN>);Sintaxe: <Varm> = log10(<ExpN>);
Exemplo: float k = log10(100);
17
Função: log10() para calculo de qualquer base.
Retorna o logaritmo na base n de um valorpassado como parâmetro para <ExpN>.
Sintaxe: <Varm> = log10(<ExpN>) / log10(<Base>);Sintaxe: <Varm> = log10(<ExpN>) / log10(<Base>);
Exemplo: float k = log10(100) / log10(2.718);
k = 4.605
18
Função: exp()
Retorna o valor exponencial que tem com base a constante de Euler ex = y.
Sintaxe: <varm> = exp(<ExpN>);Sintaxe: <varm> = exp(<ExpN>);
Exemplo: int e = exp(1);
Resultado e = 2.7183
19
Função:modf()
Decompões o número armazenado em<expN1> em duas partes: <ExpN2> recebe aparte inteira e <Varm>, a parte fracionáriado número.do número.
Sintaxe:
<Varm> = modf(<expN1>,<expN2>);
20
Exemplo Prático
double x = 2.689;
double y;
double z=modf(x,&y);
printf("x = %f\n",x);printf("x = %f\n",x);
printf("y = %f\n",y);
printf("z = %f\n",z);
21
x= 2.689y = 2.0z = 0.689
Funções TrigonométricaTrigonométrica
22
Função: sin()
Retorna o valor do seno de um ângulo em graus.
Sintaxe: <varm> = sin(<ExpN>);
Exemplo:Exemplo:
#define rad 0.017453289
float x = sin(30*rad);
x = 0.5
23
Função: cos()
Retorna o valor do cosseno de um ângulo em graus.
Sintaxe: <varm> = cos(<ExpN>);
Exemplo:Exemplo:
#define rad 0.017453289
float x = cos(30*rad);
x = 0.866
24
Função: tan()
Retorna o valor do tangente de um ângulo em graus.
Sintaxe: <varm> = tan(<ExpN>);Sintaxe: <varm> = tan(<ExpN>);
Exemplo:
#define rad 0.017453289
float x = tag(45*rad);
x = 1
25
Exercício - 1
Marta estava em um festival de balonismoe queria saber qual era a altura que o balão desua família estava voando, sabe-se que Martaao olhar para o balão, o seu ângulo, emao olhar para o balão, o seu ângulo, emrelação a linha do horizonte era de 400 e sabe-se que a distância, diagonal entre Marta e obalão é de (X) metros. Escrever um programaque calcule a altura (h) do balão.
26
Exercício-2
Carlos era praticante de rapel e precisavausar uma corta que em uma das pontas estavafixa ao topo do mastro de altura (x) conhecidae a outra ponta na margem de um rio cujae a outra ponta na margem de um rio cujadistância (y) era também conhecida. Criar umprograma que calcula qual a distância queCarlos terá que percorrer.
27
Funções para Tratamento de StringTratamento de String
28
Aplicações das Funções de Manipulação de String.
29
Conceito de String
String vem a ser um conjunto de combinações de caracteres.
Exemplo: Exemplo:
char s[40] = “Abacaxi, vem a ser uma fruta”;
30
Marcador de terminação
Toda string na linguagem C émarcada por intermédio de ummarcador de terminação quemarcador de terminação quepossibilita realizar a checagem do seutérmino.
31
Exemplo
char s[30] = “ABACAXI”;
0 1 2 3 4 5 6 7
32
0 1 2 3 4 5 6 7
A B A C A X I \0
Biblioteca de funções String
Para se usar funções matemáticas deve-sedisponibilizar a biblioteca: <string.h>
Sintaxe: #include <string.h>
33
Função: strlen()
Retornar com o número de caracteres em umastring.
Sintaxe: <varm> = strlen(<ExpS>);Exemplo: Exemplo:
char s[30] = “Melancia”;int x = strlen(s);x = 8
34
Função: strcat()
Efetuar a concatenação de duas strings.
Sintaxe: strcat(<ExpS1>,<ExpS2>);
Observação na função strcat() os valorespassados usam o conceito de passagem porreferencia.
35
Função strcat()
Exemplo:
char m[30] = “Logica”;
char s[30] = “ de Programação”; char s[30] = “ de Programação”;
strcat(m,s);
printf("%s",m);
36
Função: strcpy
Copia o conteúdo de uma variável do tipo string paraoutra variável do tipo string.
Sintaxe: strcpy(<ExpS1>,<ExpS2>);
Exemplo:
char v[20] = “Programa”;char s[20];strcpy(s,v);
37
Função: strrev()Efetua a inversão da string passada como parâmetros.
Sintaxe: strrev(<ExpS>);
Exemplo:Exemplo:
char v[30] = “Abacaxi”;strrev(v);
38
Função: strcmp()
Compare os caracteres das duas stringsanalisando seu valor correspondente binário.
Sintaxe:
<varm> = strcmp(<ExpS1>,<ExpS2>);<varm> = strcmp(<ExpS1>,<ExpS2>);
se s1 < s2; retorna -1
se s1 > s2; retorna 1
se s1 == s2; retorna 0
39
Exemplo Prático
int res = strcmp("Carlos","Ana");
printf("%d\n",res);
Retorna (1) devido s1 > s2.
40
Funções da Biblioteca
#include <cctype>
41
Função isdigit()
Determina se um caractere passado comoparâmetro é ou não um digito numérico.Verdadeiro (1) e falso (0).
Sintaxe:
<varm> = isdigit(<ExpC>);
42
Exemplo Prático
Retorna 0 caso o digito não seja um número.
int b = isdigit('a');
printf("%d\n",b);printf("%d\n",b);
43
Função: isapha()
Retorna verdadeiro se o argumento é umaletra do alfabeto; falso em caso contrário.
Sintaxe:Sintaxe:
<Varm> = isalpha(<ExpC>);
44
Exemplo Prático
Retorna zero caso o caractere seja um digito do alfabeto.
int b1 = isalpha('p');
printf("%d\n",b1);
45
Funções da biblioteca stdlib.hstdlib.h
46
atoi():
Converte uma string dada em uma inteiro.
Observação: O texto deve conter valores.
Sintaxe: <Varm> = atoi(<Exps>);
Exemplo: int x = atoi(“123”);
47
atof()
Converte uma string dada em ponto flutuante.
Observação: O texto deve conter valores.
Sintaxe: <Varm> = atof(<ExpS>);Sintaxe: <Varm> = atof(<ExpS>);
Exemplo: float y = atof(“3.666”);
48
atol()
Converte uma string dada em um inteiro longo.
Observação: O texto deve conter valores.
Sintaxe: <Varm> = atol(<ExpS>);Sintaxe: <Varm> = atol(<ExpS>);
Exemplo: long y = atol(“876554433”);
49