P
ROGRAMAÇÃO DEC
OMPUTADORESI
Funções
O Q
UE É UMAF
UNÇÃOM
ATEMÁTICA?
Em Matemática, uma função é uma relação entre dois conjuntos que associa a cada elemento do primeiro
conjunto (domínio) um elemento (imagem) do segundo conjunto (contra-domínio).
Ha várias maneiras de descrever ou representar uma função:
função:
lei de associação gráfico
E E
MC
OMPUTAÇÃO?
Em Computação, uma função é um segmento de
programa dentro de um programa maior que realiza uma tarefa específica e é relativamente independente do
restante do código.
Também chamada de rotina, sub-rotina, procedimento,
método e subprograma. método e subprograma.
Uma função é especificada por um algoritmo (corpo) que é executado quando a função é chamada.
E E
MC
OMPUTAÇÃO?
Os dados a serem processados pelo algoritmo são informados através dos parâmetros formais, que são variáveis introduzidas na definição da função.
O algoritmo calcula um valor que é o resultado da função.
E para usar uma função?
Uma função é usada através da chamada de função (ou
Uma função é usada através da chamada de função (ou
aplicação de função), que e uma expressão consistindo em uma função e uma lista de argumentos.
E
XEMPLODefinir uma função que calcula o quadrado de um número inteiro
D
EFINIÇÃO DE UMAF
UNÇÃOToda função tem uma lista de parâmetros formais. Cada parâmetro formal tem um nome um tipo.
Os parâmetros formais são separados por vírgula e a lista é escrita entre parênteses.
Toda função tem um tipo de retorno, que determina o tipo de seu resultado.
Os parâmetros formais de uma função determinam qual Os parâmetros formais de uma função determinam qual
será o seu comportamento
O comando return termina a execução do corpo da função e determina o seu resultado.
E
XEMPLOdefinir uma função que retorna o fatorial de um número inteiro.
D
EFININDO UMA FUNÇÃOA expressão contida dentro do comando return é o valor de retorno, e corresponde a resposta de uma determinada função, quando aplicada a uma lista de argumentos.
return é o ultimo comando a ser executado por uma função, e nada após ele será executado.
As funções devem ser declaradas fora do programa principal main.
C
HAMANDO UMA FUNÇÃOUma função é usada através da chamada de função que é uma expressão consistindo em uma função e uma lista de argumentos.
Um argumento é uma expressão cujo valor é passado para a função, que o utiliza para determinar o resultado. A avaliação da chamada de função consiste em
A avaliação da chamada de função consiste em
1. avaliar os argumentos,
2. associar cada parâmetro formal da função com o valor do
argumento correspondente,
3. executar os comandos no corpo da função, que
eventualmente produzem um resultado,
E
XEMPLOC
HAMANDO UMAF
UNÇÃOA função a seguir soma dois valores passados como parâmetro
C
HAMANDO UMAF
UNÇÃOUma forma clássica de realizarmos a invocação (ou
chamada) de uma função é atribuindo o resultado a uma variável.
Podemos invocar uma função em qualquer lugar onde faríamos a leitura de uma variável, mas nunca a escrita. Ex:
Ex:
C
HAMANDO UMAF
UNÇÃONa seguinte instrução é realizada a leitura do valor y e logo atribuído à variável x, neste ponto é executado a
escrita do valor y em x.
Vejamos o seguinte programa. A terceira instrução está errada.
C
HAMANDO UMAF
UNÇÃOAs variáveis passadas como parâmetros indicam quais são os valores com os quais a função ira trabalhar.
Esses valores são copiados para os parâmetros da função, que pode manipulá-los.
Os argumentos passados na chamada da função não Os argumentos passados na chamada da função não possuem necessariamente os mesmos nomes que os parâmetros formais usados na declaração da função.
C
HAMANDO UMAF
UNÇÃOO segundo printf está errado. As variáveis a e b são variáveis privadas que somente pertencem à função ‘soma’ e não tem como ter acesso a elas em main.
P
OR QUEU
TILIZARF
UNÇÕES?
Dividir para conquistar (como utilizar no jogo da velha?)
Evitar que os blocos do programa quem grandes demais (mais difíceis de entender);
Facilitar a leitura do programa-fonte;
Separar o programa em partes(blocos) que possam serlogicamente compreendidos de forma isolada.
P
OR QUEU
TILIZARF
UNÇÕES?
Permitir o reaproveitamento de código já construído (por você ou por outros programadores);
Evitar que um trecho de código seja repetido várias vezes dentro de um mesmo programa;
Permitir a alteração de um trecho de código de uma forma Permitir a alteração de um trecho de código de uma forma
D
IVIDIR PARA CONQUISTARJogo da Velha
Muito complicado fazer todo o código em um único método
(main)?
C
RÉDITOSBaseado no material do prof. José Romildo Malaquias Baseado no material do prof. José Romildo Malaquias