跳轉到內容

圖靈/你好世界

來自華夏公益教科書,開放的書籍,為開放的世界

這是一個非常簡單的程式。它會將文字列印到螢幕上,然後退出。

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 : *

If 語句,情況

華夏公益教科書