Decimaler

Tags:    c++

Hej, jeg har følgende kode

Fold kodeboks ind/udKode 


Hvis jeg indtaster et decimal tal som 0.5 eller lign. som x, y eller z, rudner den op/ned til et helt tal og regner derudfra. hvordan får jeg den til at regne med bare 1 decimal?



6 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Du skal bruge float i stedet, en int kan kun indeholde hel tal



Når du initialiserer skriver du f.eks. float a, b, c; istedet for int a, b, c;

Efter hvad jeg kan se i din kode skal du skrive float z istedet for int z.



Indlæg senest redigeret d. 12.01.2008 14:52 af Bruger #6559


Hej Anders,

Tag decimal tallene, gang dem med 10.
Konverter til int.
Foretag beregningerne med ints.
Gem som float ved beregningen A / 10.0, hvor A er det beregnede tal.

Nu har du resultatet med en decimal, inclusive i beregningerne.



hmm hvordan skal det så se ud? Kan ikke lige få det til at gøre som jeg vil...:S



Du kan ikke få den til at regne med kun en decimal, men du kan få den til at skrive ud med kun en decimal.
Det er næsten altid bedre at bruge double i stedet for float.
Et eksempel:
Fold kodeboks ind/udKode 



Se også:
http://www.cplusplus.com/reference/iostream/manipulators/setprecision.html
Læg mærke til boxen nederst til venstre.




Tak for det, fik det til at virke med float, men vil også lige prøve med double:)



t