SlideShare ist ein Scribd-Unternehmen logo
1 von 17
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 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.
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(){ 
}
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.
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; 
 }
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;
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çõ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.
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.
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.
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).
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 
#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; }
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;
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; }
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).
Fim 
Obrigado!

Weitere ähnliche Inhalte

Was ist angesagt?

Interface e Usabilidade: Como levar o usuário onde queremos!
Interface e Usabilidade: Como levar o usuário onde queremos!Interface e Usabilidade: Como levar o usuário onde queremos!
Interface e Usabilidade: Como levar o usuário onde queremos!Marcelo Prudente
 
Estruturas em C++ (struct)
Estruturas em C++ (struct)Estruturas em C++ (struct)
Estruturas em C++ (struct)Márcio Rizzatto
 
Planejamento e Estimativas Ágeis com Planning Poker
Planejamento e Estimativas Ágeis com Planning PokerPlanejamento e Estimativas Ágeis com Planning Poker
Planejamento e Estimativas Ágeis com Planning PokerGlesio Paiva
 
Sql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumoSql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumoHelder Lopes
 
Logica programacao python-slides
Logica programacao python-slidesLogica programacao python-slides
Logica programacao python-slidesronaldo ramos
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-Mauro Pereira
 
Introdução à Linguagem de Programação C
Introdução à Linguagem de Programação CIntrodução à Linguagem de Programação C
Introdução à Linguagem de Programação CJose Augusto Cintra
 
Exercício resolvido normalização
Exercício resolvido normalizaçãoExercício resolvido normalização
Exercício resolvido normalizaçãoTicianne Darin
 
Introdução a linguagem c karen lowhany
Introdução a linguagem c   karen lowhanyIntrodução a linguagem c   karen lowhany
Introdução a linguagem c karen lowhanyKaren Costa
 
[Curso Java Basico - Orientacao a Objetos] Aula 35: Recursividade
[Curso Java Basico - Orientacao a Objetos] Aula 35: Recursividade[Curso Java Basico - Orientacao a Objetos] Aula 35: Recursividade
[Curso Java Basico - Orientacao a Objetos] Aula 35: RecursividadeLoiane Groner
 
Aula 10 - Diagrama de Sequencia.pdf
Aula 10 - Diagrama de Sequencia.pdfAula 10 - Diagrama de Sequencia.pdf
Aula 10 - Diagrama de Sequencia.pdfIvanFontainha
 
Estrutura de Dados - Aula 04 - Listas Estáticas
Estrutura de Dados - Aula 04 - Listas EstáticasEstrutura de Dados - Aula 04 - Listas Estáticas
Estrutura de Dados - Aula 04 - Listas EstáticasLeinylson Fontinele
 
Estrutura de Dados - Aula 01
Estrutura de Dados - Aula 01Estrutura de Dados - Aula 01
Estrutura de Dados - Aula 01thomasdacosta
 

Was ist angesagt? (20)

Interface e Usabilidade: Como levar o usuário onde queremos!
Interface e Usabilidade: Como levar o usuário onde queremos!Interface e Usabilidade: Como levar o usuário onde queremos!
Interface e Usabilidade: Como levar o usuário onde queremos!
 
Estruturas em C++ (struct)
Estruturas em C++ (struct)Estruturas em C++ (struct)
Estruturas em C++ (struct)
 
Planejamento e Estimativas Ágeis com Planning Poker
Planejamento e Estimativas Ágeis com Planning PokerPlanejamento e Estimativas Ágeis com Planning Poker
Planejamento e Estimativas Ágeis com Planning Poker
 
Algoritmos 05 - Estruturas de repetição
Algoritmos 05 - Estruturas de repetiçãoAlgoritmos 05 - Estruturas de repetição
Algoritmos 05 - Estruturas de repetição
 
Minicurso Linux
Minicurso Linux Minicurso Linux
Minicurso Linux
 
Sql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumoSql básico - Teoria e prática: Um grande resumo
Sql básico - Teoria e prática: Um grande resumo
 
Logica programacao python-slides
Logica programacao python-slidesLogica programacao python-slides
Logica programacao python-slides
 
Python - Introdução
Python - IntroduçãoPython - Introdução
Python - Introdução
 
Lista de exercicios algoritmos resolvida-
Lista de exercicios   algoritmos  resolvida-Lista de exercicios   algoritmos  resolvida-
Lista de exercicios algoritmos resolvida-
 
Python Interface Gráfica Tkinter
Python Interface Gráfica TkinterPython Interface Gráfica Tkinter
Python Interface Gráfica Tkinter
 
Estrutura de dados em Java - Recursividade
Estrutura de dados em Java - RecursividadeEstrutura de dados em Java - Recursividade
Estrutura de dados em Java - Recursividade
 
Fundamentos do java
Fundamentos do javaFundamentos do java
Fundamentos do java
 
Introdução à Linguagem de Programação C
Introdução à Linguagem de Programação CIntrodução à Linguagem de Programação C
Introdução à Linguagem de Programação C
 
Exercício resolvido normalização
Exercício resolvido normalizaçãoExercício resolvido normalização
Exercício resolvido normalização
 
Malwares
MalwaresMalwares
Malwares
 
Introdução a linguagem c karen lowhany
Introdução a linguagem c   karen lowhanyIntrodução a linguagem c   karen lowhany
Introdução a linguagem c karen lowhany
 
[Curso Java Basico - Orientacao a Objetos] Aula 35: Recursividade
[Curso Java Basico - Orientacao a Objetos] Aula 35: Recursividade[Curso Java Basico - Orientacao a Objetos] Aula 35: Recursividade
[Curso Java Basico - Orientacao a Objetos] Aula 35: Recursividade
 
Aula 10 - Diagrama de Sequencia.pdf
Aula 10 - Diagrama de Sequencia.pdfAula 10 - Diagrama de Sequencia.pdf
Aula 10 - Diagrama de Sequencia.pdf
 
Estrutura de Dados - Aula 04 - Listas Estáticas
Estrutura de Dados - Aula 04 - Listas EstáticasEstrutura de Dados - Aula 04 - Listas Estáticas
Estrutura de Dados - Aula 04 - Listas Estáticas
 
Estrutura de Dados - Aula 01
Estrutura de Dados - Aula 01Estrutura de Dados - Aula 01
Estrutura de Dados - Aula 01
 

Ähnlich wie Funções inline e Recursivas

Algoritmos e Estrutura de Dados - Aula 03
Algoritmos e Estrutura de Dados - Aula 03Algoritmos e Estrutura de Dados - Aula 03
Algoritmos e Estrutura de Dados - Aula 03thomasdacosta
 
mod3-programação-estruturada
mod3-programação-estruturadamod3-programação-estruturada
mod3-programação-estruturadadiogoa21
 
Programação Estruturada 2 - Aula 02
Programação Estruturada 2 - Aula 02Programação Estruturada 2 - Aula 02
Programação Estruturada 2 - Aula 02thomasdacosta
 
RevisãoCompactaFuncoesPonteiro.pptx
RevisãoCompactaFuncoesPonteiro.pptxRevisãoCompactaFuncoesPonteiro.pptx
RevisãoCompactaFuncoesPonteiro.pptxClaudia Ferlin
 
Aula 8 - Modularização e Funções.pptx
Aula 8 - Modularização e Funções.pptxAula 8 - Modularização e Funções.pptx
Aula 8 - Modularização e Funções.pptxItamarGoncalves2
 
Aula - Funções (Curso de Python Básico -- FATEC SENAI MT)
Aula - Funções (Curso de Python Básico -- FATEC SENAI MT)Aula - Funções (Curso de Python Básico -- FATEC SENAI MT)
Aula - Funções (Curso de Python Básico -- FATEC SENAI MT)Filipe Chagas Ferraz
 
Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros Karoline Tavares
 
Recursividade em linguagem C
Recursividade em linguagem CRecursividade em linguagem C
Recursividade em linguagem CLeonardo Lima
 
Comandos de Controle de Programa em C
Comandos de Controle de Programa em CComandos de Controle de Programa em C
Comandos de Controle de Programa em CElaine Cecília Gatto
 
Funções PHP - Criação de sites II
Funções PHP - Criação de sites II Funções PHP - Criação de sites II
Funções PHP - Criação de sites II info_cimol
 
aula intro de Python sobre Funcoes.pdf
aula intro de  Python sobre  Funcoes.pdfaula intro de  Python sobre  Funcoes.pdf
aula intro de Python sobre Funcoes.pdfGabrielEduardo16342
 

Ähnlich wie Funções inline e Recursivas (20)

Algoritmos e Estrutura de Dados - Aula 03
Algoritmos e Estrutura de Dados - Aula 03Algoritmos e Estrutura de Dados - Aula 03
Algoritmos e Estrutura de Dados - Aula 03
 
Funções em C
Funções em CFunções em C
Funções em C
 
mod3-programação-estruturada
mod3-programação-estruturadamod3-programação-estruturada
mod3-programação-estruturada
 
Programação Estruturada 2 - Aula 02
Programação Estruturada 2 - Aula 02Programação Estruturada 2 - Aula 02
Programação Estruturada 2 - Aula 02
 
Apostila de-arduino
Apostila de-arduinoApostila de-arduino
Apostila de-arduino
 
Modularização
ModularizaçãoModularização
Modularização
 
RevisãoCompactaFuncoesPonteiro.pptx
RevisãoCompactaFuncoesPonteiro.pptxRevisãoCompactaFuncoesPonteiro.pptx
RevisãoCompactaFuncoesPonteiro.pptx
 
Aula 4
Aula 4Aula 4
Aula 4
 
Funções em C
Funções em CFunções em C
Funções em C
 
Aula 8 - Modularização e Funções.pptx
Aula 8 - Modularização e Funções.pptxAula 8 - Modularização e Funções.pptx
Aula 8 - Modularização e Funções.pptx
 
Linguagem C - Funções
Linguagem C - FunçõesLinguagem C - Funções
Linguagem C - Funções
 
Aula09 traducaosin110
Aula09 traducaosin110Aula09 traducaosin110
Aula09 traducaosin110
 
Aula - Funções (Curso de Python Básico -- FATEC SENAI MT)
Aula - Funções (Curso de Python Básico -- FATEC SENAI MT)Aula - Funções (Curso de Python Básico -- FATEC SENAI MT)
Aula - Funções (Curso de Python Básico -- FATEC SENAI MT)
 
Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros Linguagem C - Funções e ponteiros
Linguagem C - Funções e ponteiros
 
Recursividade em linguagem C
Recursividade em linguagem CRecursividade em linguagem C
Recursividade em linguagem C
 
Comandos de Controle de Programa em C
Comandos de Controle de Programa em CComandos de Controle de Programa em C
Comandos de Controle de Programa em C
 
Funções PHP - Criação de sites II
Funções PHP - Criação de sites II Funções PHP - Criação de sites II
Funções PHP - Criação de sites II
 
aula intro de Python sobre Funcoes.pdf
aula intro de  Python sobre  Funcoes.pdfaula intro de  Python sobre  Funcoes.pdf
aula intro de Python sobre Funcoes.pdf
 
Funções e procedimentos
Funções e procedimentosFunções e procedimentos
Funções e procedimentos
 
apostila C++
apostila C++apostila C++
apostila C++
 

Kürzlich hochgeladen

Eletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréEletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréGuilhermeLucio9
 
A Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralA Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralFranciscaArrudadaSil
 
LEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaLEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaGuilhermeLucio9
 
Treinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção IndividualTreinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção Individualpablocastilho3
 
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfLivro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfSamuel Ramos
 
Tecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraTecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraGuilhermeLucio9
 
A EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.ppt
A EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.pptA EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.ppt
A EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.pptssuserb964fe
 

Kürzlich hochgeladen (7)

Eletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante TamandaréEletricista instalador - Senai Almirante Tamandaré
Eletricista instalador - Senai Almirante Tamandaré
 
A Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboralA Importância dos EPI's no trabalho e no dia a dia laboral
A Importância dos EPI's no trabalho e no dia a dia laboral
 
LEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurançaLEAN SIX SIGMA - Garantia da qualidade e segurança
LEAN SIX SIGMA - Garantia da qualidade e segurança
 
Treinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção IndividualTreinamento de NR06 Equipamento de Proteção Individual
Treinamento de NR06 Equipamento de Proteção Individual
 
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdfLivro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
Livro Vibrações Mecânicas - Rao Singiresu - 4ª Ed.pdf
 
Tecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade AnhangueraTecnólogo em Mecatrônica - Universidade Anhanguera
Tecnólogo em Mecatrônica - Universidade Anhanguera
 
A EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.ppt
A EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.pptA EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.ppt
A EXTENSÃO RURAL NO BRASIL Sociologia e Extensão 1 2014.ppt
 

Funções inline e Recursivas

  • 1. Funções Inline e Funções Recursivas Kadzua Chakupadedza Kuyeri
  • 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. 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. 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. 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. 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. Exemplo de uso de Funções Inline case 2: cout<<"Obrigado!!!"; break; default: cout<<"Opcao invalidann"; main();} }
  • 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. 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. 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. 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. Funções Recursivas  Dada uma função recursiva, sempre é possível escrever uma função equivalente, sem recursão.
  • 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. 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. 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. 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).