全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2044
推到 Plurk!
推到 Facebook!

關於 for 的使用

 
UB
一般會員


發表:18
回覆:19
積分:7
註冊:2007-02-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-03-18 02:22:31 IP:211.76.xxx.xxx 訂閱
假如我有一個簡單的 for loop 如下:

for m := n to 100 do
begin
if m = 50 then
begin
m := m 5;
end;
end;

這個程式沒有什麼意義,他純粹跑 100-n 1 次,如果 n 是 小於或等於50 的時候 m 就少跑5 次 !!
重點是這樣子寫會有下列的錯誤:
Assignment to FOR-Loop variable 'm'
也就是警告我改變了m 的值,而這正是我故意要改的,
上面的例子是我胡亂掰出來的,重點是 有沒有什麼辦法是可以改控制 for loop 次數的 變數 !?
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-03-18 12:21:15 IP:211.22.xxx.xxx 未訂閱
沒有!那是違反Delphi語法的。
http://delphi.ktop.com.tw/board.php?cid=30&fid=69&tid=86963
如果要控制For的迴圈計數,可以在外層在加一層迴圈來控制內圈的執行次數。
pcboy
版主


發表:177
回覆:1838
積分:1463
註冊:2004-01-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-03-18 20:55:21 IP:203.204.xxx.xxx 訂閱
改用 do while
m:=n;
while m<=100 do
begin
if m=50 then
m := m 5 ;
m:=m 1;
end;

------
能力不足,求助於人;有能力時,幫幫別人;如果您滿意答覆,請適時結案!

子曰:問有三種,不懂則問,雖懂有疑則問,雖懂而想知更多則問!
UB
一般會員


發表:18
回覆:19
積分:7
註冊:2007-02-19

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-03-19 20:18:59 IP:211.76.xxx.xxx 訂閱
stallion 大大 的方法是在 for loop 裡面加上 if 來作判斷進而控制迴旋的次數,
而 pcboy 大大的方法則是 直接用 while 來控制迴旋的次數,
兩位大大的方法都達到一樣的結果,解答真的不曉得該給哪位,

pcboy 大大的方法在邏輯上比較容易理解,所以解答就給 pcboy,
不過stallion 大大把重點說出來了,也就是 控制 for loop 的變數在 delphi 裡面,不管任何情況都是不能改的 !!
syntax
尊榮會員


發表:26
回覆:1139
積分:1258
註冊:2002-04-23

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-03-27 17:48:55 IP:61.64.xxx.xxx 訂閱
去看書吧,不要問書上有書得非常基本的入門知識

或是把隨 Borland 而來的說明 pdf 檔,應該有兩到三個

看完,包準你進步神速

不過要有耐心頁數上千
如果你要走程式設計這一條路,你要加油
我寫程式只是好玩,都看過三遍以上
系統時間:2017-10-21 14:28:37
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!