Métodos Recursivos

Postado por Lucio em 13 de janeiro de 2010

No Visual Basic um método pode ser recursivo, o que significa que ele pode invocar a si próprio. A recursão torna o estilo de programação muito flexível e nos dá a possibilidade de resolver problemas complexos de uma forma elegante e precisa.

Agora vamos direto para um exemplo típico para entendimento de recursividade, vamos calcular o fatorial de um número inserido pelo usuário.

1. Abra o Visual Studio e crie um novo projeto do tipo Windows Forms Application.

2. Coloque dois controles TextBox, duas Labels e um Button.

3. Edite as seguintes propriedades dos controles e os organize conforme a imagem:

4. Organize-os da seguinte forma:

CONTROLE NAME TEXT
Label1 lblNumero Insira um número:
Label2 lblResultado Resultado:
TextBox1 txtNumero <Vazio>
TextBox2 txtResultado <Vazio>
Button1 btnExecutar Executar

clip_image001

5. Agora vamos criar a função que irá processar a fatoração.

Public Function Fatorial(ByVal Numero As Integer) As Double
 
If Numero = 0 Then 'IMPEDINDO : QUE UM ERRO SEJA GERADO PELA TENTATIVA DE FATORAR POR ZERO
 
Exit Function
 
ElseIf Numero = 1 Then 'IMPEDINDO : UTILIZAÇÃO DA FUNÇÃO INUTILMENTE
 
Return 1
 
Else 'EXECUTANDO : FATORAÇÃO
 
Return Numero * Fatorial(Numero - 1)
 
End If
 
End Function

6. Agora vamos colocar dentro do controle btnExecutar o código, que irá chamar a função e executar de fato o processo:

Private Sub btnExecutar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExecutar.Click
 
'DEFININDO : VARIÁVEIS NECESSÁRIAS
 
Dim Numero As Integer
 
Dim Resultado As Double
 
'ARMAZENANDO : NÚMERO PARA SER FATORADO
 
Numero = CType(txtNumero.Text, Integer)
 
'ARMAZENANDO : RESULTADO DA FATORAÇÃO
 
Resultado = Fatorial(Numero)
 
'EXIBINDO : RESULTADO DA FATORAÇÃO
 
txtResultado.Text = CType(Resultado, String)
 
End Sub

7. Execute o processo e visualize o resultado.

clip_image002

*CType: Retorna o resultado de uma conversão explícita de uma expressão para um tipo de dados especificado pelo programador como um objeto, estrutura, classe ou interface.

Como foi possível observar, o método de recursão economiza bastante código, deixando o software mais conciso e simples de ser visualizado.

Pronto! Simples e funcional.



Compartilhe:

Sobre: Lucio

Estudante e jovem desenvolvedor. Concluiu o ensino técnico de informática e o curso profissionalizante de montagem e manutenção. Gosta de aprender o porquê das coisas e não somente como utilizá-las, afinal instruções sem reflexão são para os computadores.

Comentários

Sem Comentários

Deixe um Comentário!

Nome: ( necessário )

E-Mail: ( necessário )

Website:

Comentário: