60 likes | 166 Views
Curso de Programação em C++. Universidade Federal do Ceará Departamento de Engenharia Estrutural e Construção Civil Prof: Evandro Parente Junior Monitor: Renato Peixoto Abril/2007. Funções. Importância para programação:
E N D
Curso de Programação em C++ Universidade Federal do Ceará Departamento de Engenharia Estrutural e Construção Civil Prof: Evandro Parente Junior Monitor: Renato Peixoto Abril/2007
Funções • Importância para programação: • Permite que um procedimento utilizado em várias partes diferentes do código seja programada uma única vez. • Permite dividir um tarefa complexa em uma série de tarefas mais simples. • Observações: • Cada função deve executar uma (ou algumas) tarefa(s) específica(s). • Uma função pode chamar outras funções e a si mesmo (recursividade). • Cada função pode ser testada isoladamente antes de ser utilizada. • Criação de bibliotecas de funções.
Funções • Filosofia “caixa-preta”: • Para utilizar uma função não é preciso saber como ela executa a tarefa desejada. • Como é calculada a raiz quadrada de um número? • É necessário conhecer apenas: • O objetivo da função. • Os parâmetros de entrada e saída. • É importante saber quais as variáveis são modificadas pela função. Dados Resultados Função
Funções • Estratégias de programação: • Top-down: • Parte do conceito geral do sistema e vai detalhando suas partes até chegar nas funções mais simples. • A programação só deve começar após um certo nível de detalhamento ser atingido. • Estratégia dominante antes do aparecimento da POO. • Botton-up: • Parte da especificação dos elementos mais simples e obtém o sistema final pelo agrupamento destes elementos. • Ênfase na definição de funções genéricas e testadas independentemente das demais. • Favorece a reutilização de código. • Combinação das duas estratégias.
Funções • Sintaxe: Tipo NomeFunção(tipo1 arg1, ... , tipon angn) { ... // Corpo da função. } • Tipo é o tipo de retorna da função (int, double, ...). • Comando return é utilizado para retornar o resultado. • Tipo1 indica o tipo do argumento 1 (arg1). • Exemplo: int Max(int a, int b) // Definicao da funcao Max para dois números { if (a > b) return(a); return(b); } int i = 2, j = 4; cout << Max(i, j); // Chamada da funcao no programa
Funções • Sobrecarga de funções: • C++ permite que diferentes funções tenham o mesmo nome. • Desde que o número de argumentos ou seus tipos sejam diferentes. • Exemplo: int Max(int a, int b, int c) // Definicao da funcao Max para 3 números { return(Max(Max(a, b), c)); // Retorna Max(d, c), onde d = Max(a,b) } int i = 2, j = 4, k = 3; cout << Max(i, j, k); // Chamada da funcao no programa