🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: be.comp.programming
3 messages
3 total messages Started by Hephaestus Thu, 26 Dec 2002 17:40
Visual C++: afronden
#6284
Author: Hephaestus
Date: Thu, 26 Dec 2002 17:40
17 lines
1494 bytes
Hallo iedereen,


Ik zou een programmaatje moeten schrijven in Visual C++ dat een bedrag
in Euro omzet naar Dollar en omgekeerd. 

Dit alles is mij al gelukt, maar ik moet het bekomen getal afronden
tot op 2 cijfers na de komma en hier loopt het dus fout. 

Voor het bedrag in Euro en Dollar gebruik ik als type double

Iemand enig idee hoe ik dit moet doen?


Prettige feesten,  met vriendelijke groeten,

Jan
Re: Visual C++: afronden
#6287
Author: Christophe
Date: Thu, 26 Dec 2002 23:41
27 lines
1832 bytes
bekijk eens de class Math
zit er daar geen functie 'round' bij ofzo...

anders www.google.be

mvg


"Hephaestus" <heph46@hotmail.com> schreef in bericht
news:pgfm0vouj2l8d31bri3iej7k3rm9tagph8@4ax.com...
> Hallo iedereen,
>
>
> Ik zou een programmaatje moeten schrijven in Visual C++ dat een bedrag
> in Euro omzet naar Dollar en omgekeerd.
>
> Dit alles is mij al gelukt, maar ik moet het bekomen getal afronden
> tot op 2 cijfers na de komma en hier loopt het dus fout.
>
> Voor het bedrag in Euro en Dollar gebruik ik als type double
>
> Iemand enig idee hoe ik dit moet doen?
>
>
> Prettige feesten,  met vriendelijke groeten,
>
> Jan
Re: Visual C++: afronden
#6288
Author: Roel Schroeven
Date: Fri, 27 Dec 2002 08:49
31 lines
2034 bytes
Hephaestus wrote:
> Hallo iedereen,
> 
> 
> Ik zou een programmaatje moeten schrijven in Visual C++ dat een bedrag
> in Euro omzet naar Dollar en omgekeerd. 
> 
> Dit alles is mij al gelukt, maar ik moet het bekomen getal afronden
> tot op 2 cijfers na de komma en hier loopt het dus fout. 
> 
> Voor het bedrag in Euro en Dollar gebruik ik als type double
> 
> Iemand enig idee hoe ik dit moet doen?

Vermenigvuldigen met 100, afronden op de eenheden, delen door honderd:

double Round2Digits(double a)
{
     a *= 100.0;
     a = floor(a + 0.5);  // rond mooi af: tot .5 naar beneden, vanaf .5 
naar boven
     a /= 100.0;
     return a;
}

Dat alles als je doubles gebruikt; afhankelijk van waar het voor dient, 
is het beter van met fixed point te werken ipv floating point.

-- 
"Codito ergo sum"
Roel Schroeven
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads