常數指的是該程式不能在其執行期間改變的固定值。這些固定的值也被稱為文字。
常數可以是任何像一個整數的基本資料型別的常數,浮點常數,字元常數,複雜的常數或一個字串字面量。只有兩個邏輯常數:.true. 和 .false.
常數被視為就像普通的變數,但它們的值無法定義後進行修改。
有兩種型別的常數:
一個字面常數有值,但沒有名字。
例如,以下是文字常數:
型別 | 例子 |
---|---|
整型常數 | 0 1 -1 300 123456789 |
實型常數 | 0.0 1.0 -1.0 123.456 7.1E+10 -52.715E-30 |
複數常數 | (0.0, 0.0) (-123.456E+30, 987.654E-29) |
邏輯常數 | .true. .false. |
字元常數 |
"PQR" "a" "123'abc$%#@!" " a quote "" " 'PQR' 'a' '123"abc$%#@!' ' an apostrophe '' ' |
命名常數的值和名稱。
命名常數應該在程式或過程的開始宣告,就像一個變數的型別宣告,說明其名稱和型別。命名常數與引數屬性宣告。例如,
real, parameter :: pi = 3.1415927
例子
下面的程式計算的位移,由於重力作用下垂直運動。
program gravitationalDisp ! this program calculates vertical motion under gravity implicit none ! gravitational acceleration real, parameter :: g = 9.81 ! variable declaration real :: s ! displacement real :: t ! time real :: u ! initial speed ! assigning values t = 5.0 u = 50 ! displacement s = u * t - g * (t**2) / 2 ! output print *, "Time = ", t print *, 'Displacement = ',s end program gravitationalDisp
當上述程式碼被編譯和執行時,它產生了以下結果:
Time = 5.00000000 Displacement = 127.374992