VB .NET - Cálculo dos divisores de um número natural


Hoje vamos calcular os divisores dos números naturais com o VB .NET.

Teoria

Fatoração (português brasileiro) ou Fatorização (português europeu) (AO 1945: Factorização) é o termo usado na álgebra para designar a decomposição que se faz de cada um dos elementos que integram um produto, ou seja, o resultado de uma multiplicação.

Assim como parcela é cada uma das partes que integram uma adição, o fator é como se chama cada elemento que integra o produto.

Com a fatoração busca-se a simplificação das fórmulas matemáticas em que ocorre a multiplicação, especialmente das chamadas equações.(Wikipédia)

Assim , fatorar um número, é expressá-lo no formato de uma multiplicação de fatores. Vamos a alguns exemplos:

b) O número 18 pode ser escrito como uma multiplicação de fatores das seguintes formas:

18 = 2 x 9
18 = 3 x 6

18 = 1 x 18

Para descobrir os fatores de um número natural, vamos considerar o número 40. 
40 x 1 = 40
4 x 10 = 40
5 x 8 = 40
20 x 2 = 40

Sendo assim, os números 1, 2 , 4, 5, 8, 10, 20 e 40 são fatores do número natural 40. 

Agora vamos descobrir todos os números naturais que se dividem exatamente (sem resto) pelo número 40: 

40 : 1 = 40
40 : 40 = 1
40 : 2 = 20
40 : 20 = 2
40 : 4 = 10
40 : 10 = 4
40 : 5 = 8
40 : 8 = 5 

Então, os divisores de 40 são: 1, 2, 4, 5, 8, 10, 20, 40. 

Observe que os fatores e os divisores do número natural 40 são os mesmos. As idéias de fatores e divisores de um mesmo número natural, estão ligadas. 

Isso quer dizer que podemos encontrar os divisores de um número natural, descobrindo os seus fatores. 

Criando o projeto no Visual Basic .NET

Abra o Visual Basic 2010 Express Edition e crie um novo projeto do tipo Windows Forms Application com o nome Fatoracao;

A seguir no formulário form1.vb vamos incluir os controles :

Conforme o leiaute da figura abaixo:

Como o objetivo é realizar o cálculo dos divisores de um número natural vou mostrar somente a rotina que faz o cálculo e que esta no evento Click do botão - Calcular Fatores :

    Private Sub cmdCalcular_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdCalcular.Click
        Dim lngNumeros As Double
        Dim i As Short

        Try
            If Not txtNumero.Text.Equals("") Then
                lngNumeros = txtNumero.Text
                If lngNumeros < 0 Then
                    lstFatores.Items.Clear()
                    For i = -1 To lngNumeros Step -1
                        If lngNumeros Mod i = 0 Then
                            lstFatores.Items.Add(i)
                        End If
                    Next
                ElseIf lngNumeros > 0 Then
                    lstFatores.Items.Clear()
                    For i = 1 To lngNumeros
                        If lngNumeros Mod i = 0 Then
                            lstFatores.Items.Add(i)
                        End If
                    Next
                Else
                    lstFatores.Items.Clear()
                    lstFatores.Items.Add("O número zero não possui fatores")
                End If
            Else
                MsgBox("Informe um número a ser calculado.", MsgBoxStyle.Critical, "Informe um valor")
            End If
            lblmsg.Text = lstFatores.Items.Count.ToString + " fatores."
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub

Executando o projeto iremos obter:

 Simples e eficiente...

Pegue o projeto completo aqui : FatoracaoVBNET.zip

Eu sei é apenas VB .NET mas eu gosto...

"Todos quantos vieram antes de mim são ladrões e salteadores; mas as ovelhas não os ouviram. Eu sou a porta; se alguém entrar por mim, salvar-se-á, e entrará, e sairá, e achará pastagens." João 10:8-9

Referências:


José Carlos Macoratti