最近在做專案時有個地方用到了概率,要計算概率自然會用到除法。我這邊概率的演算法是這樣的,從0到10000獲取個隨機數,隨機值除以10000就是概率了,但是一時大意沒注意細節,結果直接除了,如下:
random rdo=new
random();
intintnum
=rdo.next(0,
10000
);float
result
=intnum
/10000
;
random rdo=new
random();
float
intnum =(
float
)rdo.next(0,
10000
);float
result
=intnum
/10000
;
ok,如願以償,得到了我想要的答案,比如intnum是845,那麼得到的結果是0.0845.c#中解決了這個問題,於是我想到了sqlserver中會不會也有這種情況,於是我試了試,如下:
select845/
10000
查詢結果等於0,看來sql和c#是一樣的,於是我也換了種寫法,如下:
selectconvert
(float
,845)/
10000
查詢結果等於0.0845,正確。
C 大數除法
提供一種有關 c 大數除法的思路。用二分的方式,尋找答案。用 mid 被除數,若大於除數,則縮小右端點,若小於除數,則縮小左端點。最後可以得到 答案。本人採取這個方法,得到的數字比答案大一,所以要減去一 最後要注意的是,mid 被除數 有越界的可能。我設定了,如果越界,則返回0,然後在 二分的迴圈 ...
大數除法(C )
大數除法 不同於一般的模擬,除法操作步數模仿手工除法,而是利用減法操作實現的。其基本思想是反覆做除法,看從被除數裡面最多能減去多少個除數,商就是多少。逐個減顯然太慢,要判斷一次最多能減少多少個整的10的n次方。以7546除23為例。先減去23的100倍,就是2300,可以減3次,餘下646。此時商就...
C語言中的除法
在c中,除法是有一些特殊的。如果是兩個整數型的變數相除,如10 3,其結果是3,而不是3.3333333 又如10 4,其在c中的結果是2,而不是2.5。也就是說,整數型變數相除,如果其結果從數學角度上看是小數,無論是否可以四捨五入進製,c都會講小數點後的部分拋棄。只有將初始化變數為浮點數型別,其在...