# I how do make a basic cash register in visual basic?

I have designed it and now need to code it but find that it does not accept my functions for calculating the net price, vat , total incl vat and then rounding this off to two decimal places also ensuring it rejects a non numeric input on the net price text box, I have a calculate btn that runs runs the functions...please advice where I'm going wrong.

Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim intTxtcost As Integer
Dim inttxtamount As Integer
Dim intvat As Integer
intTxtcost = CInt(TXTCOST.Text)
inttxtamount = CInt(TXTAMOUNT.Text)
intvat = intTxtcost * inttxtamount / 100 * 17.5
TXTVAT.Text = CStr(intvat)
TXTRESULT.Text = intvat + intTxtcost

End Sub
End Class

###### Who is Participating?

Commented:
also keep in mind the order of operation for math (I always remember it using "MiDAS" = mulitiply, then divide, then add, then subtract)

so:
intvat = intTxtcost * inttxtamount / 100 * 17.5

intTxtcost *inttxtamount and
100*17.5
will happen first
then those two operations will get divided...be sure that is what you want, else use parenthesis
0

Commented:
You have everything as integers, I would first suggest you use decimals instead.
And to validate a number, the quickest way would be like:
If IsNumeric(TXTCOST.Text) Then
intTxtcost = CInt(TXTCOST.Text)
End If

0

Commented:
try:
``````            Dim decTxtcost As Decimal = 0.0
Dim dectxtamount As Decimal = 0.0
Dim decvat As Decimal = 0.0
If IsNumeric(TXTCOST.Text) = True Then
decTxtcost = CType(TXTCOST.Text, Decimal)
End If
If IsNumeric(TXTAMOUNT.Text) = True Then
dectxtamount = CType(TXTAMOUNT.Text, Decimal)
End If
decvat = decTxtcost * dectxtamount / 100 * 17.5
TXTVAT.Text = FormatNumber(decvat, 2)
TXTRESULT.Text = FormatNumber(decvat + decTxtcost, 2)
``````
0

Author Commented:
Thanks for this..I haven't tried it yet but given your creds I am pretty sure it s what I need.Thanks again.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.