Fortran
Fortran (hay FORTRAN) là một ngôn ngữ lập trình biên dịch, tĩnh, kiểu mệnh lệnh được phát triển từ thập niên 1950 và vẫn được dùng nhiều trong tính toán khoa học hay phương pháp số cho đến hơn nửa thế kỷ sau đó. Tên gọi này ghép lại từ tiếng Anh Formula Translator/Translation nghĩa là dịch công thức. Các phiên bản đầu có tên chính thức là FORTRAN, nhưng chữ hoa được chuyển sang chữ thường từ phiên bản Fortran 90. Tiêu chuẩn quốc tế cho tên gọi này ngày nay là "Fortran". Fortran được phát triển ban đầu như là một ngôn ngữ thủ tục. Tuy nhiên các phiên bản mới của Fortran (từ Fortran 90) đã có các tính năng hỗ trợ lập trình hướng đối tượng. Lịch sửMột số phiên bản Fortran tiêu biểu:
Cú phápCác phiên bản cũ hơn cho đến Fortran 77 có sử dụng định dạng theo cột (fixed column) theo quy định:
Các phiên bản mới hơn (từ Fortran 90 trở đi) cho phép dùng định dạng tự do (free-form), không có ràng buộc về vị trí các cột trong chương trình. Dưới đây sẽ trình bày một số ví dụ cú pháp theo định dạng tự do này. Lệnh gánDạng của lệnh gán tương tự như ngôn ngữ lập trình BASIC: ! Tên_biến = Giá_trị
A = 5
LoiChao = "Hello"
Lệnh gọi chương trình conCác chương trình con được gọi bằng lệnh ! CALL tenCTC tham_so1, tham_so2,...
Các cấu trúc
IF T > 1.0 THEN
W = 23.7 * T
ELSE
W = 23.7 * (T ** 0.75)
END IF
DO I = 1, N
B(I) = 2.8 * (I - 0.3)
END DO
Ví dụChương trình "Hello world"Chương trình "Hello world" có thể chạy được sau khi dịch bằng bất cứ trình dịch nào kể từ Fortran 90 trở đi. program helloworld
print*,"Hello world"
end program helloworld
Chương trình tìm diện tích hình trụChương trình này, tính diện tích của hình trụ, chạy khi được dịch bởi bất cứ trình dịch nào kể từ Fortran 90 trở đi. Các chữ đứng sau dấu program HinhTru
! Tinh dien tich Hinh tru.
!
! Khai bao bien.
implicit none ! Yeu cau moi bien can duoc khai bao -- danh cho Fortran 90.
integer:: Loi
real:: BanKinh,ChieuCao,DienTich
real, parameter:: Pi = 3.14159
do
! Nhac nguoi dung nhap Ban kinh va Chieu cao.
write (*,*) "Nhap Ban kinh va Chieu cao, nhan 't' de thoat."
read (*,*,iostat=Loi) BanKinh,ChieuCao
!
! Neu khong nhap duoc, thoat.
if (Loi /= 0) stop "thoat"
!
! Tinh dien tich. Ky hieu ** nghia la "luy thua".
DienTich = 2*Pi*(BanKinh**2 + BanKinh*ChieuCao)
!
! Viet (BanKinh, ChieuCao) va (DienTich) ra man hinh.
write (*,"(1x,'BanKinh=',f6.2,5x,'ChieuCao=',f6.2,5x,'DienTich=',f6.2)") BanKinh,ChieuCao,DienTich
end do
end program HinhTru
Chú ý: câu lệnh write (*,"(1x,'BanKinh=',f6.2,5x,'ChieuCao=',f6.2,5x,'DienTich=',f6.2)") BanKinh,ChieuCao,DienTich có sử dụng khai báo định dạng trong Fortran. Có thể giải thích sơ lược như sau:
Kiểu định dạng chuỗi này của riêng Fortran, nó rất khác so với chuẩn định dạng Tham khảo
Liên kết ngoàiChung chung
Các chương trình Fortran ví dụ(bằng tiếng Anh)
Trình dịch Fortran có bản quyền thương mại
Trình dịch Fortran tự do |