- Pascal 教程
- Pascal - 主頁
- Pascal - 概覽
- Pascal - 環境設定
- Pascal - 程式結構
- Pascal - 基本語法
- Pascal - 資料型別
- Pascal - 變數型別
- Pascal - 常量
- Pascal - 運算子
- Pascal - 決策
- Pascal - 迴圈
- Pascal - 函式
- Pascal - 過程
- Pascal - 變數作用域
- Pascal - 字串
- Pascal - 布林值
- Pascal - 陣列
- Pascal - 指標
- Pascal - 記錄
- Pascal - 變體
- Pascal - 集合
- Pascal - 檔案處理
- Pascal - 記憶體
- Pascal - 單元
- Pascal - 日期和時間
- Pascal - 物件
- Pascal - 類
- Pascal 有用資源
- Pascal - 快速指南
- Pascal - 有用資源
- Pascal - 討論
Pascal - 運算子優先順序
運算子優先順序決定了表示式中項的組合。這會影響表示式的計算方式。某些運算子比其他運算子優先順序更高;例如,乘法運算子比加法運算子優先順序更高。
例如 x = 7 + 3 * 2;在此處,x 被指定為 13,而不是 20,因為運算子 * 的優先順序高於 +,所以它首先與 3*2 相乘,然後再加到 7。
此處,優先順序最高的運算子出現在表格頂部,優先順序最低的運算子出現在底部。在表示式中,首先計算優先順序較高的運算子。下表表示 Pascal 運算子優先順序 -
| 運算子 | 優先順序 |
|---|---|
| ~, not, | 最高 |
| *, /, div, mod, and, & | |
| |, !, +, -, or, | |
| =, <>, <, <=, >, >=, in | |
| or else, and then | 最低 |
嘗試下面的示例來了解 Pascal 中的運算子優先順序 -
program opPrecedence;
var
a, b, c, d : integer;
e: real;
begin
a := 20;
b := 10;
c := 15;
d := 5;
e := (a + b) * c / d; (* ( 30 * 15 ) / 5 *)
writeln('Value of (a + b) * c / d is : ', e:3:1 );
e := ((a + b) * c) / d; (* (30 * 15 ) / 5 *)
writeln('Value of ((a + b) * c) / d is : ' , e:3:1 );
e := (a + b) * (c / d); (* (30) * (15/5) *)
writeln('Value of (a + b) * (c / d) is : ', e:3:1);
e := a + (b * c) / d; (* 20 + (150/5) *)
writeln('Value of a + (b * c) / d is : ' , e:3:1 );
end.
編譯並執行上述程式碼後,會產生以下結果
Value of (a + b) * c / d is : 90.0 Value of ((a + b) * c) / d is : 90.0 Value of (a + b) * (c / d) is : 90.0 Value of a + (b * c) / d is : 50.0
pascal_operators.htm
廣告