Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++ ja desimaalit

Firia [09.04.2010 20:02:15]

#

Heipähei taas!

Tällä kertaa kyselisin, kuinka saan lyhenneltyä float-tyyppisten lukujen tulostusta..olen kokeillut setprecisionia, mutta tulos on esim.seuraavanlainen

setprecision(4)
jos luku on 1234.5678 tulostuu 1234
jos luku on 12.34567 tulostuu 12.34
jos luku on 123.567 tulostuu 123.4 ja niin edelleen..

haluaisin tulostukseen aina kaksi desimaalia riippumatta luvun koosta..onnistuuko float-tyypillä?

Kiitosta

aaämdee [09.04.2010 20:24:02]

#

Moi.
Kokeile seuraavaa koodia

#include <iostream>
#include <iomanip>

using namespace std;

int main()
{
	float f1 = 715.517;
	float f2 = 1.337;
	cout << setiosflags(ios::fixed) << setprecision(2) << f1 << endl << f2 << endl;
	return 0;
}

temu92 [11.04.2010 02:52:05]

#

Myös printf soveltuu tähän.

#include <cstdio>

int main(){
	float n1	= 1.337;
	float n2	= 123.456;

	printf("%.2f %.2f", n1, n2);

	return 0;
}

Firia [11.04.2010 15:43:39]

#

Kiitos,helpottui kummasti molemmilla tavoilla :D

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta