Funções Inline 
e 
Funções 
Recursivas 
Kadzua 
Chakupadedza Kuyeri
Funções Inline 
 As funções inline servem como 
códigos a serem copiados ao lugar 
que são chamados. 
 Quando chamamos u...
Sintaxe de declaração de uma 
função Inline 
 Para criar uma função inline basta fazer 
a mesma coisa que faríamos para c...
Funções Inline 
 A palavra-chave inline é usada em 
C++ e aplicada a uma função. Ela 
indica ao compilador que cada 
cham...
Exemplo de uso de Funções Inline 
 #include <iostream> 
 #include <math.h> 
 using namespace std; 
 long int quadrado ...
Exemplo de uso de Funções Inline 
long int quadrado (int x){ 
return(x=pow(x,2)); 
} 
inline void opcao(){ 
int k; 
cout<<...
Exemplo de uso de Funções Inline 
case 2: 
cout<<"Obrigado!!!"; 
break; 
default: 
cout<<"Opcao invalidann"; 
main();} 
}
Vantagem/Desvantagem do uso de 
Funções Inline 
 A vantagem é o aumento de 
desempenho (ganha-se velocidade 
com as funçõ...
Funções Recursivas 
 Uma função é recursiva se um 
comando no corpo da função chama 
ela mesma. 
 Qualquer função em lin...
Criar Funções Recursivas 
 Para criar uma função recursiva basta 
escrever no código da função, a 
função que está sendo ...
Funcionamento da função 
recursiva 
 Início do programa: Chama 
automaticamente a função MAIN 
 Processos e comandos den...
Funções Recursivas 
 Dada uma função recursiva, sempre é 
possível escrever uma função 
equivalente, sem recursão.
Comparação entre função recursiva e a função 
equivalente sem recursão 
Função recursiva Código equivalente sem recursão 
...
Exemplo de uso de Funções Recursivas 
#include <iostream> 
using namespace std; 
int main() { 
int x; 
cout<<"Veiculo:n1.L...
Exemplo de uso de Funções 
Recursivas 
case 2: 
cout<<"Ligeiro de carga:t20,00 meticais"; 
break; 
case 3: 
cout<<"Pesado ...
Vantagem/Desvantagem do uso de 
Funções Recursivas 
 Usar a função recursiva torna o 
algoritmo simples. Quem faz toda a ...
Fim 
Obrigado!
Próximos SlideShares
Carregando em…5
×

Funções inline e Recursivas

291 visualizações

Publicada em

Programacao em C++

Publicada em: Engenharia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
291
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
2
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Funções inline e Recursivas

  1. 1. Funções Inline e Funções Recursivas Kadzua Chakupadedza Kuyeri
  2. 2. Funções Inline  As funções inline servem como códigos a serem copiados ao lugar que são chamados.  Quando chamamos uma função inline em um programa, o compilador substitui a chamada de função pelo próprio código da função, adaptando automaticamente os parâmetros e retorno da função.
  3. 3. Sintaxe de declaração de uma função Inline  Para criar uma função inline basta fazer a mesma coisa que faríamos para criar uma função normal, a única diferença é que antes de começar a escrever a função devemos utilizar a palavra reservada inline.  Palavra _chave tipo_de_retorno nome_da_função (parâmetros) Exemplo:inline int kaddy(){ }
  4. 4. Funções Inline  A palavra-chave inline é usada em C++ e aplicada a uma função. Ela indica ao compilador que cada chamada para a função inline deve ser substituída pelo corpo desta função.
  5. 5. Exemplo de uso de Funções Inline  #include <iostream>  #include <math.h>  using namespace std;  long int quadrado (int x);  inline void opcao();  main() {  int y,z;  cout<<"Introduza o numero para calcular o seu quadradon";  cin>>y;  cout<<"O quadrado de "<<y<<" e t"<<quadrado(y)<<"nn";    opcao();  return 0;  }
  6. 6. Exemplo de uso de Funções Inline long int quadrado (int x){ return(x=pow(x,2)); } inline void opcao(){ int k; cout<<"Pretende efectuar mais um calculo?n1.Simt2.Naon"; cin>>k; switch(k){ case 1: main(); break;
  7. 7. Exemplo de uso de Funções Inline case 2: cout<<"Obrigado!!!"; break; default: cout<<"Opcao invalidann"; main();} }
  8. 8. Vantagem/Desvantagem do uso de Funções Inline  A vantagem é o aumento de desempenho (ganha-se velocidade com as funções inline), pois o programa não precisa se deslocar até achar a função.  Mas esse aumento de desempenho vem com um aumento no custo de espaço em memória.
  9. 9. Funções Recursivas  Uma função é recursiva se um comando no corpo da função chama ela mesma.  Qualquer função em linguagem C/C++ pode ser chamada de um modo recursivo, isto é, uma função pode chamar-se a si própria.  Para uma linguagem ser recursiva, uma função deve estar apta a chamar a si própria.
  10. 10. Criar Funções Recursivas  Para criar uma função recursiva basta escrever no código da função, a função que está sendo criada como se ela já tivesse sido criada antes, isto é, por exemplo, temos um programa em que sabemos que o código do programa está todo dentro da função main, se quisermos reiniciar o programa basta chamarmos a função main novamente.
  11. 11. Funcionamento da função recursiva  Início do programa: Chama automaticamente a função MAIN  Processos e comandos dentro do código: Contas com variáveis, condições, atribuições, etc...  Chama-se a função MAIN: Sem fechar o programa, ele chama ele mesmo de novo (reinicia).
  12. 12. Funções Recursivas  Dada uma função recursiva, sempre é possível escrever uma função equivalente, sem recursão.
  13. 13. Comparação entre função recursiva e a função equivalente sem recursão Função recursiva Código equivalente sem recursão #include <iostream> #include <math.h> using namespace std; long int quadrado (int x); main() { int y; cout<<"Introduza o numero para calcular o seu quadradon"; cin>>y; cout<<"O quadrado de "<<y<<" e t"<<quadrado(y); return 0; } long int quadrado (int x){ return x=pow(x,2); } #include <iostream> #include <math.h> using namespace std; long int quadrado (int x); main() { int y; cout<<"Introduza o numero para calcular o seu quadradon"; cin>>y; cout<<"O quadrado de "<<y<<" e t"<<quadrado(y); return 0; } long int quadrado (int x){ x=pow(x,2); return x; }
  14. 14. Exemplo de uso de Funções Recursivas #include <iostream> using namespace std; int main() { int x; cout<<"Veiculo:n1.Ligeiron2.Ligeiro de Cargan3.Pesado de passageiro e cargan4.Pesado de carga com atreladonn"; cin>>x; switch(x){ case 1: cout<<"Ligeiro:t10,00 meticais"; break;
  15. 15. Exemplo de uso de Funções Recursivas case 2: cout<<"Ligeiro de carga:t20,00 meticais"; break; case 3: cout<<"Pesado de passageiro e carga:t40,00 meticais"; break; case 4: cout<<"Pesado de carga e atrelado:t100,00 meticais"; break; default: cout<<"Operacao invalidannnn"; main(); } cout<<"nnttObrigado!!!n"; cout<<"ttBoa viagem!"; return 0; }
  16. 16. Vantagem/Desvantagem do uso de Funções Recursivas  Usar a função recursiva torna o algoritmo simples. Quem faz toda a conta é a função.  Mas toda facilidade tem seu custo. Apesar de nosso algoritmo estar curto, toda vez que chamamos uma função leva um certo tempo para ser processada (a chamada de uma função consome tempo de processamento).
  17. 17. Fim Obrigado!

×