31-08-2004 FUNÇÕES *Uma função é um conjunto de instruções cujo objetivo é cumprir uma tarefa em particular e agrupadas numa inidade com um nome para referenciá-la. Usamos funções para dividir a tarefa original em pequenas tarefas que simplificam e organizam o programa *Funções reduzem o tamanho do programa, qualquer instrução que aparece no programa mais de uma vez é candidata a ser uma função *O código de uma função é agregado uma única vez e pode ser executado muitas vezes no decorrer do programa. CHAMANDO UMA FUNÇÃO Chamar uma função, é o meio pelo qual solicitamos que o programa desvie o controle e passe para a função e depois volte para a instrução seguinte à da chamada da função. double a,b; cin >> a; b=strq(a); clrscr(); cout << b; *Quando uma função não ratorna nenhum valor, sua chamada deve ser feita como uma instrição independente do código *Quando uma função retorna um valor, a chamada da função pode fazer parte de uma atribuição ou expreção *Uma variável local do programa, declarada dentro de uma função main() não é visiveldentro de outras funções *A comunicação de dados entre o programa e a função é feita através de parametros, que são informados entre parênteses após o nome da função, na sua chamada. *Tais parâmetrros são dhamados de parâmetros reais e podem ser constante, variáveis ou expressões DEFININDO UMA FUNÇÃO. O código C++ que descreve o que uma função faz é chamado de definição da função e aparece antes e depois a função main() (lista de parâmetros formais) { //instruções } *A é uma lista tipode dos parâmetros que a função recebe, separados por virgulas. *As únicas informações do mundo externo que a função conhece são os parâmetros recebidos *O código em C++ que implementa a função deve ser escrito entre o { e }, As variáveis eclaradas dentro de uma função são locais a ela. * é o tipo de daos da informação que a função retorna Os tipos de retorno podem ser: -int -char -float -double -bool -struct //definido pelo usuário -main //quando a função não retorna nada COMANDO RETURN; *o comando return termina a execução de uma função e passa o controle de volta para o programa que o chamou return ou ou ; *O comando return retorna um único valor para a função que a chamou. Não pode ser vetores ou matrizes return; *Usado quando o tipo de função é void. *Pode ser usado vários comandos return no código de uma função, mas apenas um será executado //Programa para converter garus farenheit em graus celsius #include #include //Dada uma temperatura em farenheit, retorna o equivalente em celsius double celsius(double f) { double c; c=(f-32)*5/9; return c; } void main() { double tempf, tempc; cout << "\nTemperatura em Ferenhiet:\t"; cin >> tempf; tempc=celsius(tempf); cout << "\nTemperatura em celsius:\t" << tempc; getch(); } PROTOTIPAÇÃO *Não é necessário informar o nome dos parâmetros na prototipação, apenas os tipos *procure sempre prototipar as funções EXERCICIO: //Implemente um programa que calcule e escreva o numero de arranjos e combinações de m elementos p a p, daos pelas formulas P M! P M! A = ----- C = ------ M (M-P) M p!(M-P Se M