Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 这是想告诉我什么?_Arrays_Algorithm_Sorting_Loops_Termination - Fatal编程技术网

Arrays 这是想告诉我什么?

Arrays 这是想告诉我什么?,arrays,algorithm,sorting,loops,termination,Arrays,Algorithm,Sorting,Loops,Termination,我正在读RG Dromey的书《如何用计算机解决它》。我被一个试图解释循环终止的句子困住了。问题来了: 假设我们希望确定n元素的数组严格按升序排列(即a[1]

我正在读RG Dromey的书《如何用计算机解决它》。我被一个试图解释循环终止的句子困住了。问题来了:

假设我们希望确定
n
元素的数组严格按升序排列(即
a[1]
)。为此,我们可以使用以下说明:

a[n+1] := a[n];
i := 1;
while a[i] < a[i+1] do i := i+1
这两个14保证测试
a[i]
i=n
时为假,因此循环将在
i=n
之前正确终止

(这令人困惑。)

i只是索引
i:=1;表示i等于1
i:=i+1表示在i上加1

n=5

a[5]=14
a[5+1]=a[6]=14


14<14为false-循环终止

使用代码格式使代码看起来可读(并且每行代码之间没有太多空间)。它不是很清楚,没有连接。。。讨论循环终止,然后排序数组?正在分配值。。。我在这里有点不知所措,但是作为
i
的意思,基本数组,我知道在这种情况下
i
是数组中项目的索引
a[i]
将是
i-th
元素(如第3、第4、第5元素…),这是在哪一页?我注意到有人读到这本书是1982年出版的,但有时仍然使用教科书。我认为你应该在程序员的堆栈交换上发布这样的问题,而不是针对实际编码问题的堆栈溢出。好的。我想可能是你的英语。他们有点罗嗦。此处赋值的意思是在Pascal“:=”中设置一个值“之前”表示“之前”,配置表示“值”。所以他说在循环之前设置n+1意味着数组值将是(如图所示)。所以当它说i=n时,它指的是一个值等于另一个值,然后终止。在这种情况下,我们有六个元素。第五个元素等于第六个元素,因此循环在该点终止。对吗?有点刺耳。海报位于1982年《编程入门》第1章第12页。一切都很艰难。谢谢你理解艾伦。我没有你们这么聪明,我只希望能和你们一样好。我不是在问答案,因为我知道这是一条简单的出路,我不会从中受益。我要求澄清,因为我真的想学习这些东西。@user249240,这不是澄清?我是数组上的索引。a[5]是第五个元素。你得到了第二个14:a[n+1]:=a[n];好啊现在我想我明白了。非常感谢你的帮助。我真的很感激。
a[1]  a[2]  a[3]  a[4]  a[5]  a[6]
2     3     5     11    14    14