图灵/过程、函数和进程
外观
< 图灵
计算机程序员和数学家都很快意识到,对于复杂的难题,试图同时解决所有问题几乎是不可能的。相反,我们尝试将问题分解成我们知道如何解决的部分。这可以通过过程和函数轻松高效地完成。
首先,让我们处理过程。当你在程序中调用一个过程时,它会跳转到该过程,执行代码,然后返回。
示例过程代码即将推出
你可以将函数视为计算事物的变量。它们在你调用它们时返回一个值,因此它们可以像变量一样使用。这段代码应该帮助你理解
这是一个将字符串反向打印的程序。
function flipWord (w : string) : string var tmp : string := "" for decreasing i : length (w) .. 1 tmp := tmp + w (i) end for result tmp end flipWord %%%%%%%%%%MAIN PROGRAM%%%%%%%%%% var word : string put "Enter word" get word : * %bypasses token-oriented input put flipWord (word)
实际上,这里有两个新东西。首先,也是最简单的,是 for 循环中的 decreasing
一词。它告诉图灵递减 1。正如你所看到的,函数使我们能够保持主程序简洁清晰。在更大的程序中,使用函数将变得至关重要,因为这些程序可能会变得非常复杂!
如果你想知道 "标记导向输入" 的含义,它只是告诉图灵不要将空格视为下一个变量的开始。这允许在单词变量中使用空格。
进程类似于过程,只是它们可以与代码的其他部分并发运行。这意味着,如果你正在使用循环,你的进程不会阻止你执行任何其他需要执行的操作。这在播放音乐等情况下特别有用,在这种情况下,你需要其他代码能够在播放音乐时运行。
进程的使用方式与过程类似;但是,必须用 process
替换 procedure
一词。此外,进程不能通过简单地调用它们来启动。必须在进程名称前加上 fork
命令。