線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1777
推到 Plurk!
推到 Facebook!

請教一個問題--亂數

答題得分者是:malanlk
goodjimmy
一般會員


發表:20
回覆:26
積分:9
註冊:2004-02-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-08-06 09:13:47 IP:61.227.xxx.xxx 未訂閱
各位高手 小弟目前需要一個隨機亂數產生,設有x,p兩變數,x值要介於0與1之間 然而,當p=random(x)的時候,p值的產生能出現 0.1~1之間的數值,換言之,就是要產生浮點數的亂數,查了一些書本和文章,可能是我方向找錯,一直找不到浮點數的相關random的使用方法,感謝各位撥空看文章 耐的住被人磨,則會像鑽石一樣發光
wyndog
資深會員


發表:7
回覆:362
積分:348
註冊:2004-10-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-08-06 11:16:24 IP:60.248.xxx.xxx 未訂閱
p := random; 這時候,p 就是 0~1 之間的亂數啦 還是我誤會你的意思了?
goodjimmy
一般會員


發表:20
回覆:26
積分:9
註冊:2004-02-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-08-06 18:36:38 IP:61.227.xxx.xxx 未訂閱
不是的,random這個方式,不能直接給p值變數,而且要浮點數的變數 亂數的變化是從: 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 耐的住被人磨,則會像鑽石一樣發光
malanlk
尊榮會員


發表:20
回覆:694
積分:577
註冊:2004-04-19

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-08-06 23:04:53 IP:218.171.xxx.xxx 未訂閱
是這樣吧....    
procedure TForm1.FormCreate(Sender: TObject);
begin
  Randomize;
end;    procedure TForm1.Button1Click(Sender: TObject);
var
  p: Real;
begin
  p := RandomBetween_X_and_1(0.9);
  ShowMessage(Format('%8.7f',[p]));
end;    function TForm1.RandomBetween_X_and_1(X:Real): Real;
begin
  if (X<1) and (X>0) then
    Result := Random*(1-X) X
  else
    Result := 0;
end;
richtop
資深會員


發表:122
回覆:646
積分:468
註冊:2003-06-10

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-08-07 12:34:51 IP:211.76.xxx.xxx 未訂閱
goodjimmy 您好:    不精確知道您要產生的變數範圍,底下程式碼請參考!    
// 0 <= random(n) < n
procedure TForm1.Button1Click(Sender: TObject);
var
  k : integer;
begin
  for k:=1 to 10 do
     begin
       ListBox1.Items.Add( FloatToStr((1 random(10))/10)      ); //小數點後 1 位
       //ListBox1.Items.Add( FloatToStr((10 random(91))/100)    ); //小數點後 2 位
       //ListBox1.Items.Add( FloatToStr((100 random(901))/1000) ); //小數點後 3 位
       // .....
     end;
end;
RichTop 敬上 =====***** 把數學當工具,可以解決問題;將數學變能力,能夠發現並解決問題! =====#####
goodjimmy
一般會員


發表:20
回覆:26
積分:9
註冊:2004-02-19

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-08-07 20:05:08 IP:60.198.xxx.xxx 未訂閱
感謝各位大大的幫忙,問題有了解決的方向了,小弟會再努力的,謝謝大家努力的回答!! 耐的住被人磨,則會像鑽石一樣發光
系統時間:2024-03-29 22:07:04
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!