Sign in Join
Wiki copytemporary

Basic Pascal Tutorial/Chapter 3/FOR..DO/zh CN: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: Basic Pascal Tutorial/Chapter 3/FOR..DO/zh CN

OldNewLine
1+3Da - FOR..DO循环 (原作者: Tao Yue, 状态: 未更改)
2+
3+循环是指重复执行某动作,直至满足某些条件。
4+
5+
6+有三种类型的循环:
7+
8+ * 固定重复 - 重复固定的次数
9+ * 先判断 - 测试一个布尔表达式,如果为真,则进入循环
10+ * 后判断 - 先进入循环,判断布尔表达式为真,则继续循环
11+
12+
13+在Pascal中,已知循环次数,使用for循环:
14+```
15+for 索引 := 开始(小) to 结束(大) do
16+ 语句;
17+```
18+
19+索引必须是有序数据类型,它可以在循环体内计算,但你不能更改索引值。示例:
20+```
21+sum := 0;
22+ for count := 1 to 100 do
23+ sum := sum + count;
24+```
25+
26+计算机会使用较长的时间来计算总和,[数学家高斯](<http://zh.wikipedia.org/wiki/%E5%8D%A1%E7%88%BE%C2%B7%E5%BC%97%E9%87%8C%E5%BE%B7%E9%87%8C%E5%B8%8C%C2%B7%E9%AB%98%E6%96%AF>)有更快的方式来计算总和。(`1+100=101,2+99=101`,...看出规则吗?有100个数字,所以重复50次。`101*50=5050`。这可不是高等数学,来源属于高斯可能是杜撰的。)
27+
28+
29+**在使用` for-to-do`时,初始值必须小于结束值,要不然循环不会执行! **
30+
31+**更不能在循环体内修改索引值,否则会造成编译错误。**
32+
33+**也不能更改开始与结束值(因为,并不会按着你想的那样循环)。**
34+
35+
36+如果你想递减式循环,你可以使用`for-downto-do`:
37+```
38+for 索引 := 开始(大) downto 结束(小) do
39+ statement;
40+```
41+
42+在Pascal中,for循环自增量(步长)为1。
43+
44+[[Basic Pascal Tutorial/Chapter 3/CASE/zh CN|上一页]] | [[Basic Pascal Tutorial/Contents/zh CN|目录]] | [[Basic Pascal Tutorial/Chapter 3/WHILE..DO/zh CN|下一页]]
45+---|---|---
46+
47+---
48+*From the Free Pascal wiki, page "FOR..DO/zh CN", as the Internet Archive kept it on 2023-02-02. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history