Fortran - 常量



常量是指程式在其執行過程中無法更改的固定值。這些固定值也稱為字面量

常量可以是任何基本資料型別,例如整數常量、浮點常量、字元常量、複數常量或字串字面量。只有兩個邏輯常量:.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    
廣告