Float in C++

Pagina: 1
Acties:
  • 107 views sinds 30-01-2008
  • Reageer

  • Chieliot
  • Registratie: September 2001
  • Laatst online: 04-12-2025
Ik ben nu dus aan het programmeren in C++
Kheb nu een programmaatje dat met Float's werkt.
Maar ik wil een float weergeven met altijd 2 getallen achter de komma (punt) zoals met geld als het ware.

Wie kan mij helpen?

Alvast bedankt.

AMD XP1800+, 512MB Intern, Maxtor 160Gig, Matrox G550 32 DDR Dual Head in een Chieftec DX-01-SLD


  • Sjonny
  • Registratie: Maart 2001
  • Laatst online: 09:58

Sjonny

Fratser

code:
1
cout << setprecision(2) << FloatNr << endl;

zoiets was ut volgens mij .. en anders kom je met de search er nu vast wel uit.

The problem is in the part of your brain that handles intelligence.


Verwijderd

als je m afdrukt gebruik dan ipv %f %.2f

  • roelio
  • Registratie: Februari 2001
  • Niet online

roelio

fruitig, en fris.

in C kan het zo:
code:
1
 printf ( " %.2f ", guldens );

dan krijg je een float met 2 cijfers achter de komma/punt...

AMD Phenom II X4 // 8 GB DDR2 // SAMSUNG 830 SSD // 840 EVO SSD // Daar is Sinterklaas alweer!!


Verwijderd

haha eindelijk een keer eerder

  • roelio
  • Registratie: Februari 2001
  • Niet online

roelio

fruitig, en fris.

Op donderdag 11 oktober 2001 15:37 schreef Zoepnek het volgende:
haha eindelijk een keer eerder
fuck 8-)

AMD Phenom II X4 // 8 GB DDR2 // SAMSUNG 830 SSD // 840 EVO SSD // Daar is Sinterklaas alweer!!


  • Sjonny
  • Registratie: Maart 2001
  • Laatst online: 09:58

Sjonny

Fratser

maar hij had het over C++ en niet echt C. wil je het met C++ functies, sja .. dan hoor je het met cout te doen.

The problem is in the part of your brain that handles intelligence.


Verwijderd

Op donderdag 11 oktober 2001 15:39 schreef Sjonny het volgende:
maar hij had het over C++ en niet echt C. wil je het met C++ functies, sja .. dan hoor je het met cout te doen.
Old skoel C Roolz
C++ Droolzz
:P

  • Chieliot
  • Registratie: September 2001
  • Laatst online: 04-12-2025
Iedereen bedankt,
Het is gelukt maar je moet niet vergeten

#include <iomanip.h>

toe te voegen anders doe ie het niet met

setprecision(2);

Nogmaal bedankt iedereen

AMD XP1800+, 512MB Intern, Maxtor 160Gig, Matrox G550 32 DDR Dual Head in een Chieftec DX-01-SLD


  • farlane
  • Registratie: Maart 2000
  • Laatst online: 16-09 23:59
Da's dacht ik alleen als je hem op de bovenstaande manier gebruikt.

Je kunt ook gewoon cout.setprecision() aanroepen.

Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.


Verwijderd

Op donderdag 11 oktober 2001 18:00 schreef farlane het volgende:
Je kunt ook gewoon cout.setprecision() aanroepen.
Het is cout.precision() en die werkt anders dan de manipulator setprecision(). Setprecision() verandert de precisie alleen voor het volgende getal, cout.precision() verandert de standaard-precision, waardoor alle volgende getallen met die precisie worden weergegeven.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 08:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

Op donderdag 11 oktober 2001 18:27 schreef mietje het volgende:

[..]

Het is cout.precision() en die werkt anders dan de manipulator setprecision(). Setprecision() verandert de precisie alleen voor het volgende getal, cout.precision() verandert de standaard-precision, waardoor alle volgende getallen met die precisie worden weergegeven.
zie je, printf heerst :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Verwijderd

Op donderdag 11 oktober 2001 19:18 schreef OiSyN het volgende:

[..]

zie je, printf heerst :)
dat zeg ik

  • Jelmer
  • Registratie: Maart 2000
  • Laatst online: 10:48
ok dit is dus hier [topic=237626/1/25] al langs geweest...

Verwijderd

Op donderdag 11 oktober 2001 19:26 schreef Jelmer Barhorst het volgende:
ok dit is dus hier [topic=237626/1/25] al langs geweest...
Afronden is iets anders als een float format aangeven

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 08:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

en in die topic zei ik ook al dat printf heerste, inclusief argumenten zelfs :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 04-09 14:38

curry684

left part of the evil twins

Op donderdag 11 oktober 2001 20:04 schreef OiSyN het volgende:
en in die topic zei ik ook al dat printf heerste, inclusief argumenten zelfs :)
Nee in die topic gaf je mij en mijn argumenten gelijk 8-)

Kinderachtig gemekker altijd over dat je in C++ cout moet gebruiken... BLAAAAAT.

Printf heerst de leesbaarheid en de bruikbaarheid.

I have spoken.

;)

Professionele website nodig?


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 08:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

Op vrijdag 12 oktober 2001 00:19 schreef curry684 het volgende:

[..]

Nee in die topic gaf je mij en mijn argumenten gelijk 8-)

Kinderachtig gemekker altijd over dat je in C++ cout moet gebruiken... BLAAAAAT.

Printf heerst de leesbaarheid en de bruikbaarheid.
jahaaaa hahaaaa maar ik dacht het al voordat jij het postte!

...ofzo
en nog meer van die onzin :)
I have spoken.

;)
ja maar wie ben jij? huh? tegenwoordig dan... je let niet op en je komt slaap te kort! Uhm wacht, die 2 dingen hebben vast met elkaar te maken... euh... na ja laat maar

printf heerst iig :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Jelmer
  • Registratie: Maart 2000
  • Laatst online: 10:48
Chielot:
Maar ik wil een float weergeven met altijd 2 getallen achter de komma (punt) zoals met geld als het ware.
He zoepnek, als je eens dat topic gaat lezen zie je dat het ook over het weergeven van een float (euro's) met 2 decimalen gaat....

Verwijderd

Ik zal maar weer een een pro-cout verhaal afsteken om jullie ff te fokken ;)

Stream-gerichte I/O mag dan slechter leesbaar zijn en meer tiepwerk en zo; maar het is wel typesafe, itt. de printf/scanf familie. Dat mag in kleine projecten niet zo'n voordeel zijn, maar in grote projecten is typesafety een zegen.

Bij de printf/scanf functies moet de programmeur de types handmatig doorgeven (dmv. %s,%i,%f enz.). Dat betekent in grote projecten soms dat programmeur A een %i is een %f moet veranderen als programmeur B een int in een float verandert, enz. Omdat dit mis gaat als programmeur B het programmeur A vergeet te vertellen (ook soms als A == B ;)), en dat in complexe programma's soms pas te laat ontdekt wordt, is stream I/O met zijn (door de compiler beheerste) typesafety een zegen.

/me * :+

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 08:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

nou als je in een groot project er later pas achter komt dat die int eigenlijk een float moet zijn, of andersom, dan ben je toch wel heel slecht bezig :)

Je idee was goed, maar het was gewoon een slecht voorbeeld :7

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Verwijderd

Op vrijdag 12 oktober 2001 01:38 schreef OiSyN het volgende:
nou als je in een groot project er later pas achter komt dat die int eigenlijk een float moet zijn, of andersom, dan ben je toch wel heel slecht bezig :)

Je idee was goed, maar het was gewoon een slecht voorbeeld :7
Natuurlijk is het een slecht voorbeeld, ik wilde alleen ff een foodfight; maarja, we zijn allemaal zo braaf ;)

Het blijft wel een feit dat typesafety een voordeel is. Fouten die soms pas in de debugfase (of helemaal niet) ontdekt worden, worden door steam instructies gewoonweg vermeden of door de compiler als error afgevlagd.

Daarnaast zitten er diverse gaten in je code als je printf/scanf niet correct gebruikt:
code:
1
2
3
char buf[80];
scanf("%s",buf);
printf(buf);

Hackers paradise!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 08:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

printf heerste, over scanf heb ik geen woord gezegd, okee? :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Verwijderd

Op vrijdag 12 oktober 2001 02:12 schreef OiSyN het volgende:


printf heerste, over scanf heb ik geen woord gezegd, okee? :)
Hehe, oke. Maar je snapt wel dat printf op deze manier gebruikt ook dodelijk is, vooral in combinatie met die string scanf.

De gebruiker kan een string langer dan 79 chars naar stdin schrijven waardoor hij de stack crashed, maar dat hoeft nog geen ramp te zijn. Als de gebruiker echter een boel %n types in die string schrijft, en in die chars groter dan 80 wat interessante geheugenadressen, dan zal printf op deze manier dus waardes in die geheugenadressen schrijven...

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 08:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

tja het vereist gewoon meer zorgvuldigheid, maar dat maakt het nog geen slechte functie. Als je niet met printf om kan gaan dan kun je ook niet programmeren, klaar :P

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Sjonny
  • Registratie: Maart 2001
  • Laatst online: 09:58

Sjonny

Fratser

oi, ik heb nooit gezecht dat je het moet gebruiken, alleen dat je het hoort te gebruiken ...
en tegenwoordig zitten we allemaal natuurlijk grapische progs te schijven, wie heeft er dan nog printf/cout nodig? ;)

The problem is in the part of your brain that handles intelligence.


  • [ti]
  • Registratie: Februari 2000
  • Niet online
Op vrijdag 12 oktober 2001 11:11 schreef OiSyN het volgende:
tja het vereist gewoon meer zorgvuldigheid, maar dat maakt het nog geen slechte functie. Als je niet met printf om kan gaan dan kun je ook niet programmeren, klaar :P
in X11 (setproctitle()) en wuftpd zaten ook bugs die kwamen door het verkeerd gebruik van printf() / sprintf(), deze mensen kunnen zeker ook niet programmeren dan?

Anyway, printf is opzich heel mooi (en fijn), alleen leent het zich nogal gauw tot verkeerd gebruik. (dwz printf(user_input_buffer); prima manier om je stack aan gort te helpen)

Verwijderd

Op vrijdag 12 oktober 2001 11:33 schreef Sjonny het volgende:
oi, ik heb nooit gezecht dat je het moet gebruiken, alleen dat je het hoort te gebruiken ...
en tegenwoordig zitten we allemaal natuurlijk grapische progs te schijven, wie heeft er dan nog printf/cout nodig? ;)
Iemand die een tekstbestandje wil lezen/schrijven misschien?

  • [ti]
  • Registratie: Februari 2000
  • Niet online
Op vrijdag 12 oktober 2001 01:58 schreef mietje het volgende:
Daarnaast zitten er diverse gaten in je code als je printf/scanf niet correct gebruikt:
code:
1
2
3
char buf[80];
scanf("%s",buf);
printf(buf);
In deze code zitten zelfs 2 bugs:

- Buffer overflow (smashing the stack for fun and profit anyone? ;) )
- Format string bug (voer maar es %s%s%n%n%n in :) )

Hackers paradise indeed :P

Verwijderd

Op vrijdag 12 oktober 2001 11:44 schreef [ti] het volgende:
In deze code zitten zelfs 2 bugs:
Zei ik toch al, "diverse gaten" ;)

  • [ti]
  • Registratie: Februari 2000
  • Niet online
Zei ik toch al, "diverse gaten" ;)
Hehe ff overheen gelezen, maar volgens mij zijn format string bugs ook nog lang niet zo bekend als buffer overflows dus ik denk ik wijs d'r maar ff op :)

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 08:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

Op vrijdag 12 oktober 2001 11:33 schreef Sjonny het volgende:
oi, ik heb nooit gezecht dat je het moet gebruiken, alleen dat je het hoort te gebruiken ...
en tegenwoordig zitten we allemaal natuurlijk grapische progs te schijven, wie heeft er dan nog printf/cout nodig? ;)
hah je moest eens weten hoe vaak ik sprintf enzo gebruik voor consoles en debug outputs in grafische progs :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 08:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

Op vrijdag 12 oktober 2001 11:36 schreef [ti] het volgende:

[..]

in X11 (setproctitle()) en wuftpd zaten ook bugs die kwamen door het verkeerd gebruik van printf() / sprintf(), deze mensen kunnen zeker ook niet programmeren dan?
mag ik u adviseren opmerkingen met een :P, ;), enz. erachter wat minder serieus te nemen? Dank u...

en nee, die mensen kunnen idd niet programmeren :P

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Sjonny
  • Registratie: Maart 2001
  • Laatst online: 09:58

Sjonny

Fratser

Op vrijdag 12 oktober 2001 12:05 schreef OiSyN het volgende:
mag ik u adviseren opmerkingen met een :P, ;), enz. erachter wat minder serieus te nemen? Dank u...
en daarom neem je mijn ;) wel serieus? iedereen weet wel dat printf de meest briljante debugger is :)
mietje komt dan iig nog met textbestanden die ik allang weer was vergeten :o

The problem is in the part of your brain that handles intelligence.


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 08:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

Op vrijdag 12 oktober 2001 13:10 schreef Sjonny het volgende:

[..]

en daarom neem je mijn ;) wel serieus? iedereen weet wel dat printf de meest briljante debugger is :)
mietje komt dan iig nog met textbestanden die ik allang weer was vergeten :o
uhm, ik had het tegen [ti], niet tegen jouw, wel goed blijven opletten he :)

.edit: oh wacht je bedoelde waarschijnlijk mijn andere post... maar die was ook niet zo bedoeld als in : 'houd je bek, jij hebt niet gelijk', ofzo :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Sjonny
  • Registratie: Maart 2001
  • Laatst online: 09:58

Sjonny

Fratser

Op vrijdag 12 oktober 2001 13:42 schreef OiSyN het volgende:
.edit: oh wacht je bedoelde waarschijnlijk mijn andere post... maar die was ook niet zo bedoeld als in : 'houd je bek, jij hebt niet gelijk', ofzo :)
en zo vallen we met ze allen van het ene misverstand in de andere :)

The problem is in the part of your brain that handles intelligence.


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 04-09 14:38

curry684

left part of the evil twins

Op vrijdag 12 oktober 2001 00:27 schreef OiSyN het volgende:
jahaaaa hahaaaa maar ik dacht het al voordat jij het postte!
IK WIL CONCRETE BEWIJZEN DAARVAN ZIEN MANNETJE!!! IN DRIEVOUD ONDERTEKEND DOOR JE MOEDER EN GROOTMOEDER!!!

Anders gaan we flamen!!! :P
ja maar wie ben jij? huh? tegenwoordig dan... je let niet op en je komt slaap te kort! Uhm wacht, die 2 dingen hebben vast met elkaar te maken... euh... na ja laat maar
Ik ben een paranoide koe op steroiden. rawr :Y)
printf heerst iig :)
AMEN.

Professionele website nodig?


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 04-09 14:38

curry684

left part of the evil twins

Op vrijdag 12 oktober 2001 11:33 schreef Sjonny het volgende:
oi, ik heb nooit gezecht dat je het moet gebruiken, alleen dat je het hoort te gebruiken ...
en tegenwoordig zitten we allemaal natuurlijk grapische progs te schijven, wie heeft er dan nog printf/cout nodig? ;)
Iedereen die testcode, services, daemons, proof-of-concepts, researchapplicaties of non-GUI class frameworks schrijft?

(1-0 voor de grote mensen, TSJAKKAAAAAA!!!! :P )

Professionele website nodig?


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 04-09 14:38

curry684

left part of the evil twins

Op vrijdag 12 oktober 2001 02:12 schreef OiSyN het volgende:
printf heerste, over scanf heb ik geen woord gezegd, okee? :)
scanf is bout inderdaad.

Wederom: AMEN. :7

Professionele website nodig?

Pagina: 1