產生亂數表 |
尚未結案
|
阿文
一般會員 發表:10 回覆:15 積分:5 註冊:2004-10-14 發送簡訊給我 |
各位大家好!
我想利用StringGrid產生一個亂數表(5個數為一組,共產生500組)
但一直有Error
還請各位大大協助,新手上路還請包涵~
程式部分如下:
AnsiString ListNum="0123456789";
int x,y,k;
AnsiString ListWord="";
for(y=1;y<=5;y++)
{
for(x=1;x<=11;x++)
{
randomize();
for(int k=0;k<5 ;k )
{
ListWord=ListNum[random(10)];
StringGrid->Cells[x][y]=StringGrid->Cells[x][y] ListWord;
}
ListWord="";
}
|
RedSnow
版主 發表:79 回覆:1322 積分:845 註冊:2003-12-15 發送簡訊給我 |
阿文 您好: 請注意程式碼的縮排整理並參考下列連結頁面內的說明,然後透過 "修改文章" 的功能重新張貼您的程式碼,以便於瀏覽:
【公告】程式碼張貼規則與方法
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=57538 【公告】重申版規與作業問題說明
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=58991
7 天天敲鍵盤 v 時時按滑鼠 8
|
odyaho
初階會員 發表:60 回覆:104 積分:42 註冊:2005-02-15 發送簡訊給我 |
|
odyaho
初階會員 發表:60 回覆:104 積分:42 註冊:2005-02-15 發送簡訊給我 |
|
阿文
一般會員 發表:10 回覆:15 積分:5 註冊:2004-10-14 發送簡訊給我 |
感謝版主與各位大大的指教
將程式碼錯誤訊息重新上傳
在此附註說明,上次的發言可能沒有說的很清楚,
我希望我纏生的亂數表能夠能分成10列來顯示在StringGrid
再次感謝版主及各位大大的指教
AnsiString ListNum="0123456789"; int x,y,k; AnsiString ListWord=""; for(y=1;y<=5;y++) { for(x=1;x<=11;x++) { randomize(); for(int k=0;k<5 ;k++) { ListWord=ListNum[random(10)]; StringGrid->Cells[x][y]=StringGrid->Cells[x][y]+ListWord; } ListWord=""; }錯誤訊息如下: ThrowIfOutOfRange(idx); // Should Range-checking be optional to avoid overhead ?? |
RedSnow
版主 發表:79 回覆:1322 積分:845 註冊:2003-12-15 發送簡訊給我 |
阿文 您好: 您的寫法有點怪怪的,我將您的程式碼做好縮排整理後是下列這個樣子:
AnsiString ListNum="0123456789"; int x,y,k; AnsiString ListWord=""; for(y=1;y<=5;y ) { for(x=1;x<=11;x ) { randomize(); for(int k=0;k<5 ;k ) { ListWord=ListNum[random(10)]; StringGrid->Cells[x][y]=StringGrid->Cells[x][y] ListWord; } ListWord=""; }注意到了嗎?您的大括弧不對稱 (少了一個),而且不但 int k 宣告了兩次,就連 randomize() 都放到迴圈裡邊了,該函式是作亂數的初始化,初始化動作無需每次取值時都做一次,另外還有一點,應該就是導致您程式發生錯誤的地方,您如果要使用陣列取值的方式來處理 AnsiString 的話,就得注意要由 1 開始取值,因此您應該要將取得的亂數值 (0~9) 加上 1,否則 random() 產生的值為 0 時,就會產生錯誤了。 我按照您的架構將程式做了修改並予簡化如下,您參考看看吧: int x, y, k; randomize(); for (y=1; y<=5; y ) { for (x=1; x<=11; x ) { for(k=0; k<5; k ) { StringGrid1->Cells[x][y] = StringGrid1->Cells[x][y] IntToStr(random(10)); } } }7 天天敲鍵盤 v 時時按滑鼠 8 |
阿文
一般會員 發表:10 回覆:15 積分:5 註冊:2004-10-14 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |