![]() |
|
|||||||
| 論壇說明 |
|
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
![]() |
|
|
主題工具 | 顯示模式 |
|
|
|
|
#1 (permalink) |
|
長老會員
![]() ![]() |
再來輸入判斷既然已經完成
當然就是亂數部分啦 首先將第6行的 String num="5431"; 改成 String num; 接著亂數產生時機應該在表單的OnCreat事件 語法:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
int s;
randomize();
num=random(10);
while(1){
s=random(10);
for(int i=1;i<=num.Length();i++){
if(IntToStr(s)==num.SubString(i,1)) {s=0; break;}
}
if(s!=0) num=num+IntToStr(s);
if(num.Length()==4) break;
}
ShowMessage(num);
}
while{...}是為了防止出現重複數字 好了,大家玩玩看吧!!! 然而大家或許會發現仍有些問題,譬如當您猜對後依然可以繼續猜 這時我們必須修改[我猜(SpeedButton1)]的OnClick事件,如下 語法:
void __fastcall TForm1::SpeedButton1Click(TObject *Sender)
{
int an=0,bn=0;
for(int i=1;i<=4;i++){
if(Edit1->Text.SubString(i,1)==num.SubString(i,1)) an++;
for(int j=1;j<=4;j++)
if(Edit1->Text.SubString(i,1)==num.SubString(j,1)) if(i!=j)bn++;
}
ListBox1->Items->Add(Edit1->Text+" => "+IntToStr(an)+"A"+IntToStr(bn)+"B");
if(an==4) {
ListBox1->Items->Add("猜對了...");
SpeedButton1->Enabled=false;
Edit1->Enabled=false;
}
Edit1->Text="";
}
語法:
void __fastcall TForm1::SpeedButton2Click(TObject *Sender)
{
ListBox1->Clear();
num="";
FormCreate(Sender);
SpeedButton1->Enabled=true;
Edit1->Enabled=true;
Edit1->SetFocus();
}
下個禮拜再與大家討論利用Socket物件設計可和好友網路對戰吧 < |
|
__________________ 地獄變現記 [人身得來不易,願大家能尊重生命--勿傷胎命][好淫者請好自為之吧--割鳥] 南泉禪師道: 「道不屬知,不屬不知。知是妄覺,不知是無記。若真達不疑之道,猶如太虛,廓然蕩豁,豈可強是非邪?」 德山宣鑒禪師: 「如果明白無事,則勿妄求,妄求而得,亦非得也。汝但無事於心,無心於事,則虛而靈,空而妙。若毛端許,言之本末者,皆為自欺。何故?毫氂繫念,三塗業因。瞥爾情生,萬劫羈鎖。聖名凡號,盡是虛聲。殊相劣形,皆是幻色。汝欲求之,得無累乎?」 |
|
|
|
送花文章: 5469,
|