Logo Hardware.com.br
cic321
cic321 Membro Junior Registrado
63 Mensagens 1 Curtida

Programaçao VB 2010

#1 Por cic321 07/04/2011 - 22:51
boa noite, estou com um problema e não sei onde estou errando...


Eu tenho o Exercicio que é o seguinte: Crie um programa em VB que leia o peso e o número dos bois de um rebanho. Depois conte o número de bois com peso entre 200 e 300 quilos (inclusive). Se o número do boi for igual a 0 o algoritmo deve ser interrompido.

coloquei no formulario 4 labes, 4 textboxs e um buttom e os códigos que fiz foram assim:

Dim id1, id2, cont As integer
Dim p1, p2 As Double

id1 = TextBox1.Text
id2 = TextBox2.Text
p1 = TextBox3.Text
p2 = TextBox4.Text

cont = 0

While (id1 > 0) And (id2 > 0)
If (p1 >= 200 And p1 <= 300) Or (p2 >= 200 And p2 <= 300) Then
cont = cont + 1
End If
End While

MsgBox(cont)

TextBox1.Clear()
TextBox2.Clear()
TextBox3.Clear()
TextBox4.Clear()
End Sub
End Class

mas algo da errado e não sei oque é, sempre da bug. Me ajudem a entender por favor!! >__<
obrigado!

quando eu executo, ele trava...
franks_feat
franks_feat Membro Senior Registrado
289 Mensagens 9 Curtidas
#3 Por franks_feat
08/04/2011 - 10:47
Na verdade um dos problemas é tentar atribuir
id1 = TextBox1.Text
id2 = TextBox2.Text
p1 = TextBox3.Text
p2 = TextBox4.Text

Já que as váriaveis são inteiras e double e a propriedade ".Text' é String

outra coisa...
Você coloca como condição do seu While que (id1 > 0) And (id2 > 0)
ou seja Enquanto (id1 for maior que 0) e (id2 for maior que 0)
mas estes valores, considerando que o vb tenha feito cast automático da ".Text" nunca serão iguais a zero já que o valor de id1 e id2 não são alterados
raivoso.png
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal