# Kommazahlen in Ganzzahlen umwandeln



## bensky (20. April 2005)

Hi Leute,

ich kriege aus ner berechnung z.B. 42,7483699 heruas und möchte diese var nun umwandeln in eine ganzzahl (42);

Wie muss ich das machen?

$var = $var(integer) oder so 

Danke im voraus.


----------



## Dennis Wronka (20. April 2005)

Mit $x=round($x) kannst Du eine Zahl runden.
Ob es eine Funktion gibt mit der Nachkommestellen einfach abgeschnitten werden weiss ich nicht. Bei Pascal (lang, lang ist's her) gab's sowas.

Hab grad mal fix rumgeguckt.
round() 
ceil() 
floor()


----------



## bensky (20. April 2005)

Ich danke dir recht herzlich ich versuchs mal


----------



## Dennis Wronka (20. April 2005)

Nichts zu danken.
Falls Du die Nachkommastellen einfach nur abschneiden willst wird wohl ceil() Dein Freund sein.


----------



## bensky (20. April 2005)

Hey, es funktioniert  aus 43,873499793 wird ganz easy 43 Vielen Dank.


----------



## Dennis Wronka (20. April 2005)

Wie gesagt, nichts zu danken.
Weiterhin viel Erfolg.


----------



## redX (20. April 2005)

Ich glaube es funktioniert auch ganz eifach mit einem Typecast.

$vari = (int)$vari

Das ist glaube ich das was du gmeint hast. Dann wird der Double in einen Integer umgewandelt. Dabei gehen alle Nachkomma Stellen verloren...

MFG
redX


----------



## bensky (20. April 2005)

Ja ihr habt beide recht. Funtioniert alles.

Weiß aber einer von euch zufällig wie ich z.B. 56,83374990 in 56,833 umwandle, d.h. wie ich die letzten 3 nachkomma stellen noch anzeigen und den rest einfach weglasse?
vielen dank im voraus.


----------



## djwawe (20. April 2005)

```
$zahl = $zahl * pow(10,$stellenzahl);
$zahl = ceil($zahl);
$zahl = $zahl / pow(10,$stellenzahl);
```


----------



## bensky (20. April 2005)

Wow super danke dir!


----------



## redX (20. April 2005)

ceil rundet einfach immer auf.

Du kannst entweder das machen:


```
$zahl = $zahl * pow(10,$stellenzahl); 
$zahl = (int)$zahl; 
$zahl = $zahl / pow(10,$stellenzahl);
```

oder 


```
$zahl=round($zahl,3)
```

Das Beispiel von djwawe rundet immer auf, meines rundet immer ab, und das mit round rundet 5 auf und das darunter ab. kannst nun nehmen was du möchtest 

MFG
redX


----------



## bensky (20. April 2005)

Vielen Dank Jungs jetzt hab ich alles so das es läuft)


----------

