Avatar billede alpapa Nybegynder
25. juli 2003 - 00:38 Der er 3 kommentarer og
1 løsning

Valuta omregning

Sidder og leger lidt med at omregne forskellige valuta'er,
men når man skriver mere en 16 cifre sker der noget underligt noget - er der en derude bag skærmen der kan give mig en forklaring og evt. løsning på dette fænomen ;-)

Her er koden:

void Euro(object src, EventArgs e)
{
if(txtValuta.Text != "")
{
double euro = Double.Parse(txtValuta.Text);
double facitEuro = euro / 7.5;
double sumEuro = Math.Round(facitEuro,2);
litValuta.Text = "<b>Beløb i Euro: " + sumEuro.ToString() + " €</b>";
}
else
{
litFejl.Text = "<font color=\"#FF0000\">Husk at skrive et beløb!</font>";
litFejl.Visible = true;
}
}

Link til siden:

http://whyweb.dk/valuta.aspx


På forhånd tak
alpapa
Avatar billede arne_v Ekspert
25. juli 2003 - 07:36 #1
Den bruger bare scientific notation.

Erstat:
  sumEuro.ToString()
med:
  String.Format("{0,2:f}",sumEuro)

VIGTIGT: der er kun ca. 16 betydende cifre i double. Altså kan du få
afrundings-fejl. Overvej at bruge decimal i.s.f. double.
Avatar billede medions Nybegynder
25. juli 2003 - 08:15 #2
arne_v> Hvad gør 0,2:f ?

//>Rune
Avatar billede arne_v Ekspert
25. juli 2003 - 08:32 #3
0=første argument
2=2 decimaler
f=floating point
Avatar billede alpapa Nybegynder
25. juli 2003 - 09:53 #4
Super - takker

alpapa
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester