You are on page 1of 7

24/03/2015

Prof. Dr.

Aula 6
Carlos A. Sics A. do Nascimento
caugusto.sicsu@uva.br
Curso de Engenharia

Engo.

Contedos:
Desenvolver:
Definio da estrutura de uma funo.
Criao de funes utilizando as estruturas de sequencia e
deciso.
Desenvolvimento de exerccios prticos com funes.

24/03/2015

Prof. Dr. Eng Carlos A. Sics A. do Nascimento

24/03/2015

Funes
Tambm conhecidas como sub-rotinas, so trechos de programas
especficos para a resoluo de uma tarefa definida. Utilizada
para criao de bibliotecas de cdigos especficos que
normalmente so utilizados por vrios outros programas.
O processo de entrada de dados realizado atravs de parmetros.
Os parmetros so variveis especiais definidas como entrada de
dados e so usadas na funo para armazenar os dados de
entrada da mesma.
O processo de sada de dados feito atravs do retorno do resultado
obtido para o programa que realizou a chamada para a funo.
24/03/2015

Prof. Dr. Eng Carlos A. Sics A. do Nascimento

Uma funo um instrumento (Esttico) que tem como objetivo


retornar um valor ou uma informao. A chamada de uma funo
feita atravs da citao do seu nome seguido opcionalmente de
seus argumentos iniciais entre parnteses. As funes podem ser
predefinidas pela linguagem ou criadas pelo programador de
acordo com o seu interesse.
A funo para calcular o volume de um cilindro pode ser usada em
diversos outros programas, seja para calcular o volume de um
tanque de combustvel, de uma caldeira, caixa dgua, lata de
leo, etc.
Uma vez criada a funo, a mesma pode ser reutilizada vrios outros
programas que necessitem deste clculo.
24/03/2015

Prof. Dr. Eng Carlos A. Sics A. do Nascimento

24/03/2015

Sintaxe:
Funcao <nome-da-funo> [(<seqncia-de-declaraes-de-parmetros>)]: <tipo-de-dado>
Var
// Seo de Declaraes de variveis Internas (somente para a funo)
Inicio
// Seo de Comandos da Funo
Fimfuncao

A sequencia de declaraes de parmetros usada para identificar


os dados de entrada, estas variveis devem ter o seus valores
lidos no programa que chamar a funo e os mesmos sero
transferidos funo atravs dos parmetros.
O tipo de dado, o retorno da funo, o resultado obtido na
resoluo da funo, de acordo com os parmetros passados.
24/03/2015

Prof. Dr. Eng Carlos A. Sics A. do Nascimento

Sintaxe:
funcao <nome-de-funo> [(<seqncia-de-declaraes-de-parmetros>)]: <tipo-de-dado>
// Seo de Declaraes de variveis Internas
inicio
// Seo de Comandos da Funo.
fimfuncao

A declarao de variveis internas identifica apenas variveis


auxiliares para o uso da funo, no fazem parte da entrada de
dados da mesma.
A seo de comandos da funo contm os comandos necessrios
para a resoluo do problema e para o retorno do resultado, se
for o caso. Existem funes que no produzem retorno.
24/03/2015

Prof. Dr. Eng Carlos A. Sics A. do Nascimento

24/03/2015

Exemplo:
Funcao volume_cilindro( r, h: REAL) : REAL
var
volumeCil : REAL
Inicio
volumeCil <- Pi * r ^ 2 * h
retorne volumeCil
Fimfuncao

24/03/2015

Prof. Dr. Eng Carlos A. Sics A. do Nascimento

Funes pr-definidas pelo VisuAlg:


Funo

Descrio

Abs(valor: real) : real

Calcula e Retorna o Valor Absoluto

Arccos(valor: real): real

Calcula e Retorna o Arco cosseno

Arcsen(valor: real): real

Calcula e Retorna o Arco seno

Arctan(valor: real) : real

Calcula e Retorna o Arco tangente

Asc(s: caracter): inteiro

Retorna o cd ASCII de um caractere

Compr(c: caracter): inteiro

Retorna o tamanho de uma varivel do tipo


caractere

Copia(c:caracter, posini, posfim :inteiro) :


caracter

Copia um determinado trecho de caractere

Cos (valor:real):real

Calcula e Retorna o Cosseno

Cotan(valor:real):real

Calcula e Retorna a Cotangente

Exp(base,expoente)

Calcula e Retorna a Potenciao

Grauprad(valor: real): real

Converte grau para radianos

Int(valor:real): inteiro

Converte o valor em inteiro

24/03/2015

Prof. Dr. Eng Carlos A. Sics A. do Nascimento

24/03/2015

Funes pr-definidas pelo VisuAlg:


Funo
Log(valor:real):real
Logn(valor:real):real
Maiusc(c:caracter): caracter
Minusc(c:caracter):caracter
Numpcarac(n: inteiro ou real) : caracter

Descrio
Calcula e Retorna o Logaritmo de base 10
Calcula e Retorna o Logaritmo natural (ln)
Converte em maiscula
Converte em minscula
Converte um numero inteiro ou real para
caractere

Pos (subs, c: caracter) : inteiro

Retorna a posio do caractere no texto

Quad(valor: real): real


Radpgrau(valor: real) : real
Raizq(valor:real):real
Rand: real
Randi (limite: inteiro) :inteiro

Elevado ao quadrado
Converte radiano para grau
Raiz quadrada
Gerador de nmero aleatrio entre 0 e 1
Gerador de nmero aleatrio com um limite
determinado

Sen (valor: real):real


Tan (valor: real):real

Calcula e Retorna o Seno


Calcula e Retorna a Tangente

24/03/2015

Prof. Dr. Eng Carlos A. Sics A. do Nascimento

Exemplo 1:
ALGORITMO "Funo Soma dos valores"
var
valor1,valor2, soma: real
Funcao FuncSoma(entrada_valor1, entrada_valor2: Real) : Real
var
saida_total : real
Inicio
saida_total <- entrada_valor1 + entrada_valor2
retorne saida_total
fimfuncao
Inicio
escreva("Valor_1 : ")
leia(valor1)
escreva ("Valor_2 : ")
leia(valor2)
soma <- FuncSoma(valor1,valor2)
escreval(" A soma das variveis ", soma)
FIMALGORITMO
24/03/2015

Prof. Dr. Eng Carlos A. Sics A. do Nascimento

10

24/03/2015

Exemplo2:
ALGORITMO "Funo Volume Cilindro"
var
raio, altura, volume: real
Funcao volume_cilindro( r, h: REAL): REAL
var
volumeCil : REAL
Inicio
volumeCil <- Pi * r ^ 2 * h
retorne volumeCil
Fimfuncao
Inicio
escreva("Raio do tanque em metros: ")
leia(raio)
escreva ("Altura do tanque em metros: ")
leia(altura)
volume <- volume_cilindro(raio, altura)
escreval(" O volume do tanque de ", volume , " m3")
FIMALGORITMO
24/03/2015

Prof. Dr. Eng Carlos A. Sics A. do Nascimento

11

Exerccios
1. Faa um algoritmo que calcule o volume de um paraleleppedo,
efetuando o clculo do volume (processamento) atravs de uma
funo; volPar = b .h . p
2. Faa um algoritmo que calcule a Hipotenusa de um tringulo
retngulo, efetuando o clculo da hipotenusa atravs de uma funo;
hipotenusa =
+
3. Faa um algoritmo que calcule o volume de um cone, efetuando o
clculo do volume atravs de uma funo; volCone =

4. Faa um algoritmo que verifique se um nmero Par atravs de uma


funo, retornando VERDADEIRO se for Par ou FALSO, caso o nmero
no seja Par;
5. Faa um algoritmo que exiba a quantidade de dgitos de um nmero
entre 0 e 999999, efetuando a verificao atravs de uma funo;
24/03/2015

Prof. Dr. Eng Carlos A. Sics A. do Nascimento

12

24/03/2015

FIM da Aula 6

24/03/2015

Prof. Dr. Eng Carlos A. Sics A. do Nascimento

13

You might also like