Double není přesný datový typ, viz. následující zápisek: http://www.vbnet.cz/blog-clanek--284-net... Možná se během toho přičítání dochází k nepřesnosti a Vy tam místo .8 máte něco jako .79999999... Buď použijte Decimal (který ale bude paměťově náročnější) a nebo pokud přičítáte vždy pouze číslo o jednom desetinném místě, vynásobte tu hodnotu deseti (posuneme doleva o jedno desetinné místo, aby vynásobené číslo nemělo žádná desetinná místa) a porovnejte jako Integer, tedy:
Dim casTimesTen As Integer = cas * 10 + 1
If casTimesTen = 8 Then MessageBox.Show("Ok.")
|