Dá se nějak vypnout zaokrouhlení ?   zodpovězená otázka

VB.NET

Zdravím,

mám problém s automatickým zaokrouhlením. Potřebuji vydělit celé číslo stem abych dostal dvě desetinná místa a ono mi to vyhodí vždy číslo celé.

1
2
3
4
5
Dim test As Integer
Dim paja As Integer ="2456"
test = (paja / 10)
test = Format((paja), "0.00")
Label1.Text = test

Zkoušel jsem taky

1
test = Format((paja / 10), "0.00")

ale nefunguje.

Neví někdo jak na to?

Pavel

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Zatím jsem přišel jen na to, že převedu proměnnou TEST na String a funguje to. Nezná někdo lepší řešení než je tohle?

1
2
3
4
Dim test As String
Dim paja As Integer ="2456"
test = Format((paja/10), "000.00")
Label1.Text = test

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Dobrý den,

provádět se stringem matematické operace je blbost a zaděláváte si na malér. Problém není v zaokrouhlování (vb automaticky nezaokrouhluje) ale v tom, že používáte datový typ Integer, což je celočíselný typ. Použíjte místo integeru třeba double a bude to ok.

Jinak doporučuji si prostudovat tutoriál pro začátečníky, toto jsou základy. Chce to znát alespoň pár základních datových typů, jinak si koledujete že je budete špatně používat a nějaká Vaše funkce bude vracet nesmysly. Tyto chyby se pak dost špatně hledají.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Čísla proboha nepište do uvozovek. Číslo je číslo a do uvozovek se nepíše, textový řetězec je textový řetězec a do uvozovek se naopak píše.

"5" a 5 je rozdíl - první je typu String, když k tomu přičtete další takovou pětku, dostanete "55". U Stringů máte jiné porovnávání ("5" > "1000") atd., mezi tím je potřeba rozlišovat. Na každém místě v programu musíte vy jako programátor vědět, jestli je hodnota typu String, Integer (celé čístlo) nebo Double (desetinné číslo). Visual Basic vám leccos povolí, to ale neznamená, že je to dobře a efektivně.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Děkuji za vysvětlení.

pomohlo to :)

Pavel

nahlásit spamnahlásit spam 0 odpovědětodpovědět

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback