Fortran - ตัวแปร
ตัวแปรไม่ใช่อะไรนอกจากชื่อที่กำหนดให้กับพื้นที่เก็บข้อมูลที่โปรแกรมของเราสามารถจัดการได้ ตัวแปรแต่ละตัวควรมีประเภทเฉพาะซึ่งกำหนดขนาดและรูปแบบของหน่วยความจำของตัวแปร ช่วงของค่าที่สามารถเก็บไว้ในหน่วยความจำนั้น และชุดของการดำเนินการที่สามารถนำไปใช้กับตัวแปร
ชื่อของตัวแปรสามารถประกอบด้วยตัวอักษรตัวเลขและอักขระขีดล่าง ชื่อใน Fortran ต้องเป็นไปตามกฎต่อไปนี้ -
ต้องมีความยาวไม่เกิน 31 อักขระ
ต้องประกอบด้วยอักขระที่เป็นตัวอักษรและตัวเลข (ตัวอักษรทั้งหมดของตัวอักษรและตัวเลข 0 ถึง 9) และขีดล่าง (_)
อักขระตัวแรกของชื่อต้องเป็นตัวอักษร
ชื่อไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่
ขึ้นอยู่กับประเภทพื้นฐานที่อธิบายไว้ในบทที่แล้วต่อไปนี้เป็นประเภทตัวแปร -
ซีเนียร์ No | ประเภทและคำอธิบาย |
---|---|
1 | Integer สามารถเก็บได้เฉพาะค่าจำนวนเต็ม |
2 | Real มันเก็บตัวเลขจุดลอย |
3 | Complex ใช้สำหรับจัดเก็บจำนวนเชิงซ้อน |
4 | Logical มันเก็บค่าบูลีนเชิงตรรกะ |
5 | Character มันเก็บอักขระหรือสตริง |
การประกาศตัวแปร
ตัวแปรจะถูกประกาศที่จุดเริ่มต้นของโปรแกรม (หรือโปรแกรมย่อย) ในคำสั่งประเภทประกาศ
ไวยากรณ์สำหรับการประกาศตัวแปรมีดังนี้ -
type-specifier :: variable_name
ตัวอย่างเช่น
integer :: total
real :: average
complex :: cx
logical :: done
character(len = 80) :: message ! a string of 80 characters
หลังจากนั้นคุณสามารถกำหนดค่าให้กับตัวแปรเหล่านี้เช่น
total = 20000
average = 1666.67
done = .true.
message = “A big Hello from Tutorials Point”
cx = (3.0, 5.0) ! cx = 3.0 + 5.0i
คุณยังสามารถใช้ฟังก์ชันภายใน cmplx, เพื่อกำหนดค่าให้กับตัวแปรที่ซับซ้อน -
cx = cmplx (1.0/2.0, -7.0) ! cx = 0.5 – 7.0i
cx = cmplx (x, y) ! cx = x + yi
ตัวอย่าง
ตัวอย่างต่อไปนี้แสดงให้เห็นถึงการประกาศตัวแปรการกำหนดและการแสดงผลบนหน้าจอ -
program variableTesting
implicit none
! declaring variables
integer :: total
real :: average
complex :: cx
logical :: done
character(len=80) :: message ! a string of 80 characters
!assigning values
total = 20000
average = 1666.67
done = .true.
message = "A big Hello from Tutorials Point"
cx = (3.0, 5.0) ! cx = 3.0 + 5.0i
Print *, total
Print *, average
Print *, cx
Print *, done
Print *, message
end program variableTesting
เมื่อโค้ดด้านบนถูกคอมไพล์และเรียกใช้งานจะให้ผลลัพธ์ดังนี้ -
20000
1666.67004
(3.00000000, 5.00000000 )
T
A big Hello from Tutorials Point