偽代碼
編輯偽代碼是不用于機器解釋的程序代碼,僅用于說明范例或算法。 它主要類似于混合了自然語言和數學符號的高級編程語言。 使用偽代碼,可以獨立于底層技術來描述程序流程。 因此,它通常比真正的程序代碼更緊湊、更容易理解。 另一方面,它比自然語言的描述更正式,因此更清晰,也更少歧義。
使用
編輯要理解一種算法,可以將其視為一個程序。 然而,由于編程語言的特殊性,尤其是它的語法,這變得更加困難。 另外,不同的編程語言有不同的語法。 任何表述為特定編程語言的程序都排除了所有不精通該語言的讀者。 因此,該算法以類似于程序的方式制定,但沒有進入特定的編程語言:在偽代碼中。
當要解釋算法的功能并且編程語言中的實現細節會干擾時,使用偽代碼。 一個典型的例子是在 Pascal 中從 1 開始索引的數組,但在其他語言中從 0 開始索引。 因此,在教科書中,算法偶爾會以偽代碼呈現。
可以通過偽代碼指定程序。 但是,應該避免這種情況,因為作為偽代碼的表述已經是一種編程活動,會分散對需求的注意力。
偽代碼也用于算法的開發和程序的改造(程序改造、重構)。
外觀和風格
編輯偽代碼號稱直觀清晰。 來自口語的適當比喻簡潔地反映了一個程序步驟,而不需要解釋,例如“通過索引 i 運行字段 a”或“交換變量 x 和 y 的內容”。 這種文體設備改善了概覽。 此外,經常使用元句法變量。
偽代碼的風格可以基于某種高級編程語言,例如Pascal或C。基于Java編程語言的偽代碼稱為Jana。 在 C 風格中,使用大括號 {,} 代替,然后省略關鍵字。 使用此類語言的程序員經常使用這種風格。 這兩種風格都可以在教科書中找到。
塊結構有時只用縮進表示。
例子
編輯循環
for 循環的控制變量即使在循環結束后仍保留其值。 然后它包含最后一次循環傳遞的值。 在 for 循環中,如果迭代變量在每次迭代中增加 delta 或 1,則使用關鍵字 to,或者如果迭代變量在每次迭代中減少 delta 或 1,則使用關鍵字 downto。
其他
- 注釋用 // 表示。
- 像 i = j = k 這樣的多重賦值從右到左解釋:j = k 和 i = j
- 變量只能在沒有明確標識的情況下在本地使用。
- 數組中的元素通過方括號中的索引訪問:A 返回索引為 3 的元素。
- 連續數據封裝在對象中,其屬性可以使用點運算符訪問。
- 在過程調用中,基類型作為值(“按值調用”)、帶有引用的對象和字段(“按引用調用”)傳遞。
- return 關鍵字標記過程的結束并且可以包含可選的返回值。
- 布爾運算符“and”和“or”是惰性運算符,即對于“x 和 y”,首先計算 x。 如果 x 為假,則不再評估 y。
- 發生錯誤時使用 error 關鍵字。 錯誤處理由調用過程處理,不需要進一步指定。
內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/371954/