2012-02-15 15 views
15

Mam numer ("double") od int/int (np. 10/3).Zaokrąglij podwójnie do int

Jaki jest najlepszy sposób na zbliżanie przez nadmiar i przekonwertować go do int na C#?

+0

Co to jest 'Zbliżanie przez Nadmiar'? –

+0

Uhm ... może nie wiem jak to nazwać po angielsku? :) Cóż, jeśli masz 0,2-> 1; 0.8-> 1 ... i tak dalej ... "runda" do następnego int? – markzzz

+5

Masz na myśli '(int) Math.Ceiling (x)'? – CodesInChaos

Odpowiedz

43

Pytasz o numer System.Math.Ceiling?

Math.Ceiling(0.2) == 1 
Math.Ceiling(0.8) == 1 
Math.Ceiling(2.6) == 3 
Math.Ceiling(-1.4) == -1 
+11

Math.Ceiling (-1.4) == - 2 - jaki to jest język? Powiedz mi, jak mam na imię, aby móc go uniknąć, jak zaraza. –

+1

Ups, wkręciłem to. Sprawdziłem, ale błędnie przeczytałem przykład. –

0

Rozważmy 2,42, można powiedzieć, że 242/100 btw można uprościć do 121/50.

+2

Myślę, że mnie żartujesz? Cóż ... – markzzz

+1

twoje pytanie nie było jasne! Myślę, że masz na myśli Math.Ceiling – mrbm

6
int scaled = (int)Math.Ceiling((double) 10/3) ; 
+4

Myślę, że trzeba go rzucić, aby zadziałało. To znaczy 'int scaled = (int) Math.Ceiling ((double 10/3);' –