Publicado por: Elzo Brito | 12/03/2008

calculando BHASKARA no VB

Olá Pessoal,

hoje nos vamos aprender a criar procedimentos e a fazer um programa para calcular a formula de BHASKARA, vou explicar de 2 jeitos, em um deles vamos usar o que aprendemos sobre criação de controles, sendo assim vamos criar todos os controles primeiro e depois programar em cima deles, no outro jeito vamos usar os controles do VB6.

vocês querem começar pelo mais fácil? ou pelo mais difícil?

ta vamos pelo mais fácil então, o jeito mais fácil consiste em usar os controles do visual basic, então crie um form deste jeito:

   Bhaskara

temos então:

-          3 label’s

-          3 TextBox

-          1 CommandButton

vamos criar as variáveis

  Public var_delta As Double
‘ esta variável guardará o valor do DELTA

Public var_a As Double
‘ esta guardará o valor do campo A
Public var_b As Double
‘ esta guardará o valor do campo B
Public var_b2 As Double
‘ esta guardará o valor do B ao quadrado
Public var_c As Double
‘ esta guardará o valor do campo C
Public var_x1 As Double
‘ esta guardará o valor de X1
Public var_x2 As Double
‘ e esta ultima guardará o valor do campo X2

vamos primeiro criar o procedimento calcular, é ele quem vai fazer todo o calculo para nós.

primeiro vamos lembrar como é a formula de Bhaskara,

‘ -B+ ou – “a raiz quadrada de B” – 4 * a *c “dividido por ”2*a

‘ lembrou aí?



Public Sub calcular()
Me.var_b2 = Me.var_b * Me.var_b
  ‘ primeiro vamos elevar B ao quadrado
Me.var_delta = 4
‘ aqui eu atribuo o valor 4 ao delta para na próxima ação eu multiplicar o delta pelo A
Me.var_delta = var_delta * Me.var_a
‘ aqui eu multiplico DELTA por A, só para lembrá-lo(a), eu fiz a atribuição de 4 a DELTA por que nesta parte eu multiplico 4*a
Me.var_delta = Me.var_delta * Me.var_c
‘ agora eu multiplico o DELTA por C, só lembrando 4*a*c
Me.var_delta = Me.var_b2 - Me.var_delta
‘ pronto, agora vamos subtrair o b ao quadrado pelo valor obtido no DELTA

Me.var_delta = Sqr(Me.var_delta)
‘ aqui DELTA é igual a RAIZ QUADRADA de DELTA

‘ agora vamos calcular o X1 e X2

Me.var_x1 = -Me.var_b + Me.var_delta
‘ X1 é igual a menos B + DELTA

Me.var_x2 = -Me.var_b - Me.var_delta
‘ X2 é igual a menos B menos DELTA

Me.var_x1 = Me.var_x1 / (2 * Me.var_a)
‘ agora vamos dividir o X1 por 2 * A
  Me.var_x2 = Me.var_x2 / (2 * Me.var_a)
‘ por ultimo vamos dividir o X2 por 2 * A

‘ vamos agora criar uma Caixa de mensagem para Exibir o valor do X1 e do X2
‘ lembrando que caixas de Dialogo no VB funcionam da seguinte forma:
‘ MSGBOX “entre aspas a MENSAGEM”, [virgula] o tipo de caixa de mensagem, [virgula] “entre aspas o TITULO da caixa de mensagem”
‘ & E comercial serve para concatenar as variáveis a mensagem

MsgBox "O resultado do X1 é " & Me.var_x1 & " e o resultado do X2 é " & Me.var_x2, vbCritical

End Sub

e para finalizar vamos chamar o procedimento que criamos clique no botão command1 e digite:

 Private Sub Command1_Click()var_a = Me.Text1.Text
var_b = Me.Text1.Text
var_c = Me.Text1.Text
‘ nesta parte atribuímos os valores dos textbox’s as variáveis A,B e CMe.calcular‘ aqui chamamos o procedimento CALCULARMe.Text1.Text = ""
Me.Text1.Text = ""
Me.Text1.Text = ""

‘ e por fim limpamos o conteúdo das TextBox

End Sub

  

Simples não????

Agora vamos ao jeito Difícil

para explicar a maneira mais difícil vou fazer o seguinte vou colocar o código completo e vou comentando ele, assim você vai poder copiar e colar no Visual Basic dar um F5 e pronto vai ver o programa rodando.

  
‘ para começar vamos criar os controles
Public WithEvents botao As CommandButton
Public WithEvents a As TextBox
Public WithEvents b As TextBox
Public WithEvents c As TextBox
Public WithEvents lbl_texto As Label

‘ agora vamos crier as variáveis
Public var_delta As Double
Public var_a As Double
Public var_b As Double
Public var_b2 As Double
Public var_c As Double
Public var_x1 As Double
Public var_x2 As Double

‘ este é o evento de clicar no botão
Private Sub botao_Click()
var_a = Me.a.Text
var_b = Me.b.Text
var_c = Me.c.Text
Me.calcular

Me.a.Text = ""
Me.b.Text = ""
Me.c.Text = ""

End Sub

Private Sub Form_Load()

‘ao carregar o form1 setamos os componentes para poder usá-los.
Set botao = Me.Controls.Add("VB.CommandButton", "botao")
Set a = Me.Controls.Add("VB.TextBox", "a")
Set b = Me.Controls.Add("VB.TextBox", "b")
Set c = Me.Controls.Add("VB.TextBox", "c")
Set lbl_texto = Me.Controls.Add("VB.Label", "lbl_texto")

‘ agora vamos posicionar os controles
With Form1

‘ estas são as propriedades do botão
  .botao.Caption = "Calcular"
  .botao.Visible = True
  .botao.Top = 2000
  .botao.Left = 2000

‘estas são as propriedades da Label lbl_texto
  .lbl_texto.Caption = " A B C"
  .lbl_texto.AutoSize = True
  .lbl_texto.Visible = True
  .lbl_texto.Top = 80
  .lbl_texto.Left = 200
  .lbl_texto.Width = 1000
  .lbl_texto.FontSize = 16

‘ estas são as propriedades da caixa de texto que guardará o valor de A
  .a.Text = ""
  .a.Visible = True
  .a.Top = 400
  .a.Left = 200
  .a.Width = 1000
  .a.FontSize = 16

‘ estas são as propriedades da caixa de texto que guardará o valor de B
  .b.Text = ""
  .b.Visible = True
  .b.Top = 400
  .b.Left = 1300
  .b.Width = 1000
  .b.FontSize = 16

‘ estas são as propriedades da caixa de texto que guardará o valor de C
  .c.Text = ""
  .c.Visible = True
  .c.Top = 400
  .c.Left = 2400
  .c.Width = 1000
  .c.FontSize = 16

‘ estas são as propriedades do form1
  .Height = 2985
  .Width = 3720
  .Caption = "BHASKARA"

End With

End Sub

‘agora para finalizarmos vamos criar o procedimento calcular, é ele que fazer todo o calculo.

Public Sub calcular()

Me.var_b2 = Me.var_b * Me.var_b
  ‘ primeiro vamos elevar B ao quadrado

Me.var_delta = 4
‘ aqui eu atribuo o valor 4 ao delta para na próxima ação eu multiplicar o delta pelo A

Me.var_delta = var_delta * Me.var_a
‘ aqui eu multiplico DELTA por A, só para lembrá-lo(a), eu fiz a atribuição de 4 a DELTA por que nesta parte eu multiplico 4*a

Me.var_delta = Me.var_delta * Me.var_c
‘ agora eu multiplico o DELTA por C, só lembrando 4*a*c

Me.var_delta = Me.var_b2 - Me.var_delta
‘ pronto, agora vamos subtrair o b ao quadrado pelo valor obtido no DELTA

Me.var_delta = Sqr(Me.var_delta)
‘ aqui DELTA é igual a RAIZ QUADRADA de DELTA

‘ agora vamos calcular o X1 e X2

Me.var_x1 = -Me.var_b + Me.var_delta
‘ X1 é igual a menos B + DELTA

Me.var_x2 = -Me.var_b - Me.var_delta
‘ X2 é igual a menos B menos DELTA

Me.var_x1 = Me.var_x1 / (2 * Me.var_a)
‘ agora vamos dividir o X1 por 2 * A
  Me.var_x2 = Me.var_x2 / (2 * Me.var_a)
‘ por ultimo vamos dividir o X2 por 2 * A

‘ vamos agora criar uma Caixa de mensagem para Exibir o valor do X1 e do X2
‘ lembrando que caixas de Dialogo no VB funcionam da seguinte forma:
‘ MSGBOX “entre aspas a MENSAGEM”, [virgula] o tipo de caixa de mensagem, [virgula] “entre aspas o TITULO da caixa de mensagem”
‘ & E comercial serve para concatenar as variáveis a mensagem

MsgBox "O resultado do X1 é " & Me.var_x1 & " e o resultado do X2 é " & Me.var_x2, vbCritical

End Sub

Bhaskara

pronto pessoal agora é só dar um F5 e correr pro abraço, espero que tenham gostado... até a próxima...

OBS: pessoal quando vocês rodarem no VB se vocês tiverem copiado e colado, vocês terão que arrumar as Apóstrofes que são os comentário no VB e as Aspas duplas, po que quando se copia daqui pro VB ele não reconhece nem as apópstrofes nem as aspas duplas.


Respostas

  1. Tudo bem Brito? Muito legal o teu artigo, mas mesmo sendo muito claro, não consegui resolver um detalhe.

    Quando faço correr o programa dá um erro nesta parte do código
    var_c = Me.c.TextMe.calcular

    Acabei modificando o código e não ocorreu mais o problema, mas agora quando executo o programa não funciona o botão nem posso colocar os dados para o cálculo.

    Valeu!

  2. qual o número do erro que da na linha:
    var_c = Me.c.TextMe.calcular

    você escreveu a função Calcular?

  3. nao entendi nada


Deixe uma resposta

Sua resposta:

Categorias