图灵/你好世界
外观
< 图灵
这是一个非常简单的程序。它会将文本打印到屏幕上,然后退出。
put "Hello, world!"
很简单吧?正如你可能已经推断的那样,put
打印文本。现在,我们将使用它来输出到屏幕。
接下来,我们将学习如何使用get
从用户那里获取输入。我们还将声明两个变量,name 和 age。程序将获取用户的姓名和年龄,并将它们重复回给他们。
var name : string %A string is text var age : nat %Natural number put "What is your name?" get name put "" put "How old are you?" get age put "Hello, ", name, " you are ", age, " years old!"
首先,我们必须声明两个变量。图灵允许你在程序中的任何地方声明变量,但通常最好在顶部声明它们。
那么为什么 age 是一个自然数?为什么不是一个整数?在图灵中,自然数是所有正整数,包括零 (0, 1, 2, 3...)。然而,整数包括负数以及正数。用户的年龄不应该是一个负数,所以它不需要是一个整数。
其次,你注意到%
后面跟着一些文本了吗?这些被称为注释。它们从百分号开始,一直持续到行末。它们是为编写者准备的关于程序的讯息。图灵不关心它们。它们除了对阅读代码的人有意义之外,没有其他意义。它们可能非常重要。使用有意义的注释很重要。当你八周后回来,或者其他人阅读你的代码时,你可能不知道你写的那段代码是什么意思。
在我们设置了两个变量之后,我们继续询问用户他们的姓名...他们需要知道要输入什么!
然后我们说get name
。这意味着,“让用户输入一个字符串,并将其存储在变量name
中,以便以后使用。年龄也是如此。
最后,我们将信息重新反馈给用户。确保你在关闭引号之前加上空格,否则他们的姓名和年龄前后将没有空格!
还有一件事:图灵使用面向令牌的输入。这意味着当用户输入空格时,它会被视为与换行符相同。但我们不希望这种情况发生在我们的程序中,因为如果用户输入了他们的名字和姓氏会怎么样?因此,我们告诉图灵“只有在他们按下回车键时才获取下一个变量”。
要做到这一点,请将get name
替换为get name : *