2015-10-13 56 views
-1

基本上我需要知道的:將變量除以int

我做了一個可變數字,它的值就是我們說的1-100。 然後我做了另一個變量編號。我需要知道,如果有可能,以確保我可以用數字1

除以2號例如:20/5 = 4

的問題是,我想答案是int型。所以在逗號後沒有任何東西。我只希望兩個數字像20/5, 12/4, 56/8而不是10/7,13/3等 所以不喜歡這樣的:

21/5 = 4,2

這可能嗎?

+1

你試過'21/5'呢?如果這樣顯示你的代碼。你想輪或截斷? –

+0

int/int是執行[整數除法](http://mathworld.wolfram.com/IntegerDivision.html),它總是忽略小數部分,它是_exactly_你想要的。 –

+0

您是否在尋找[模量運算符](https://msdn.microsoft.com/library/0w4e0fzs.aspx)?正如'if(x%y!= 0){/ *整數除法不會是「確切的」* /}'? – Corak

回答

3

如果這兩個值都是integer並且將它們分開。那麼逗號後就沒有任何東西。

所以你可以安全使用:int d = x/y;如果x, y是整數。

Random rand = new Random(); 
int x = rand.Next(1, 100); 
int y = rand.Next(1, 100); 

int d = x/y; 

我只是不希望它做的10/7,10/5只100/20 5/5 30/3和10/7不是11/3 8/5

在這種情況下,你會需要這樣的東西:

Random rand = new Random(); 
int x = rand.Next(1, 100); 
int y = rand.Next(1, 100); 
while (x % y != 0 && x != y) 
{ 
    y = rand.Next(1, 100); 
} 

int d = x/y; 
+0

是的,我知道,但我希望那裏沒有剩餘。因爲當我做int d = 10/7答案真的是1,4 .... –

+0

不會有..因爲它總是會返回一個整數......它根本不使用逗號。 – kevintjuh93

+0

@KevinTinnemans編號'10/7'返回'1',而不是'1.4 ....' –

0

我需要知道,如果有可能,以確保我可以用數字1

0分號

您可以簡單地生成您的第一個號碼(稱爲1),然後生成第二個號碼(稱爲temp)。然後通過執行1 * temp生成另一個號碼(稱爲2)。這將允許第二個數字完全被第一個整除。

如果你想採取分裂的組成部分簡單地把數字作爲整數,並將它們分開。兩個整數值的除法將總是產生另一個整數(即,其餘部分將被省略)。

0

如果你想要的是檢查兩個數字沒有提醒劃分,然後執行師正確的方法是:

Random rnd = new Random(); 

int x = rnd.Next(1, 100); 
int y = rnd.Next(1, 100); 

int i; 
if(x % y == 0) 
{ 
    i = x/y; 
}