Fortran - Các biến
Một biến không là gì khác ngoài tên được đặt cho một vùng lưu trữ mà chương trình của chúng ta có thể thao tác. Mỗi biến phải có một kiểu cụ thể, xác định kích thước và cách bố trí bộ nhớ của biến; phạm vi giá trị có thể được lưu trữ trong bộ nhớ đó; và tập hợp các thao tác có thể áp dụng cho biến.
Tên của một biến có thể bao gồm các chữ cái, chữ số và ký tự gạch dưới. Tên trong Fortran phải tuân theo các quy tắc sau:
Nó không được dài hơn 31 ký tự.
Nó phải bao gồm các ký tự chữ và số (tất cả các chữ cái trong bảng chữ cái và các chữ số từ 0 đến 9) và dấu gạch dưới (_).
Ký tự đầu tiên của tên phải là một chữ cái.
Tên không phân biệt chữ hoa chữ thường.
Dựa trên các kiểu cơ bản được giải thích trong chương trước, sau đây là các kiểu biến:
Sr.No | Loại & Mô tả |
---|---|
1 | Integer Nó chỉ có thể chứa các giá trị số nguyên. |
2 | Real Nó lưu trữ các số dấu phẩy động. |
3 | Complex Nó được sử dụng để lưu trữ các số phức. |
4 | Logical Nó lưu trữ các giá trị Boolean logic. |
5 | Character Nó lưu trữ các ký tự hoặc chuỗi. |
Sự định nghĩa biến
Các biến được khai báo ở đầu chương trình (hoặc chương trình con) trong câu lệnh khai báo kiểu.
Cú pháp khai báo biến như sau:
type-specifier :: variable_name
Ví dụ
integer :: total
real :: average
complex :: cx
logical :: done
character(len = 80) :: message ! a string of 80 characters
Sau đó, bạn có thể gán giá trị cho các biến này, như
total = 20000
average = 1666.67
done = .true.
message = “A big Hello from Tutorials Point”
cx = (3.0, 5.0) ! cx = 3.0 + 5.0i
Bạn cũng có thể sử dụng chức năng nội tại cmplx, để gán giá trị cho một biến phức tạp -
cx = cmplx (1.0/2.0, -7.0) ! cx = 0.5 – 7.0i
cx = cmplx (x, y) ! cx = x + yi
Thí dụ
Ví dụ sau minh họa việc khai báo, gán và hiển thị biến trên màn hình:
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
Khi đoạn mã trên được biên dịch và thực thi, nó tạo ra kết quả sau:
20000
1666.67004
(3.00000000, 5.00000000 )
T
A big Hello from Tutorials Point