Fortran(Formula Translation)是一种面向科学和工程领域的编程语言,广泛应用于科学计算、数值模拟和数据处理等领域。本教程将带您逐步学习Fortran编程的基础知识,包括变量、数据类型、控制结构和函数等内容。无论您是初学者还是有一定编程经验的人,希望能通过本教程快速入门Fortran编程。
安装Fortran编译器
在开始编程之前,您需要安装一个Fortran编译器来编译和运行您的代码。目前有许多Fortran编译器可供选择,如GNU Fortran(gfortran)、Intel Fortran(ifort)等。您可以根据自己的需求选择合适的编译器,并根据相应的安装指南进行安装。
Hello World
学习任何一门编程语言,第一步往往是编写一个Hello World程序。下面是一个简单的Fortran代码示例:
program hello
print *, "Hello, World!"
end program hello
在Fortran中,程序由程序头和程序体组成。程序头以program
关键字开始,后面跟着程序名(本例中为hello
)。程序体则包含了程序的具体逻辑。在本例中,我们使用print
语句打印了一条 “Hello, World!” 的消息。print
语句的*
表示默认输出设备。
要编译和运行上述代码,您可以使用命令行界面(Terminal)执行以下命令:
$ gfortran hello.f90 -o hello
$ ./hello
这将使用gfortran
编译器将代码编译为可执行文件,并运行生成的可执行文件。
变量和数据类型
Fortran支持多种数据类型,包括整数(Integer)、浮点数(Real)、逻辑值(Logical)和字符(Character)等。您可以声明变量并为其分配不同的数据类型。下面是一些常用的数据类型和变量声明示例:
program variables
implicit none
integer :: age
real :: height, weight
logical :: isMale
character(len=10) :: name
age = 25
height = 1.75
weight = 70.0
isMale = .true.
name = "John Smith"
print *, "Age:", age
print *, "Height:", height
print *, "Weight:", weight
print *, "Is male:", isMale
print *, "Name:", name
end program variables
在上述代码中,我们声明了一个整数变量age
、两个浮点数变量height
和weight
、一个逻辑值变量isMale
和一个字符变量name
。我们使用=
运算符为变量赋值,并使用print
语句打印出这些变量的值。
控制结构
Fortran提供了多种控制结构用于实现条件判断和循环逻辑。下面是一些常用的控制结构示例:
条件判断
program condition
implicit none
integer :: x
x = 10
if (x < 0) then
print *, "x is negative"
elseif (x == 0) then
print *, "x is zero"
else
print *, "x is positive"
end if
end program condition
在上述代码中,我们使用if
语句根据变量x
的值进行条件判断,并打印相应的结果。
循环结构
program loop
implicit none
integer :: i
do i = 1, 10
print *, i
end do
end program loop
在上述代码中,我们使用do
语句实现了一个简单的循环结构,循环打印出变量i
的值。
函数和子程序
Fortran支持函数和子程序(或称为过程)的定义和调用。函数是一段代码块,接收输入参数并返回一个值;而子程序则是一段代码块,可以包含多个语句,用于完成特定的任务。下面是一个函数和一个子程序的示例:
program functions
implicit none
integer :: x, y
x = 10
y = 20
print *, "Sum:", sum_of_numbers(x, y)
call print_numbers(5)
end program functions
function sum_of_numbers(a, b) result(sum)
implicit none
integer, intent(in) :: a, b
integer :: sum
sum = a + b
end function sum_of_numbers
subroutine print_numbers(n)
implicit none
integer, intent(in) :: n
integer :: i
do i = 1, n
print *, i
end do
end subroutine print_numbers
在上述代码中,我们定义了一个函数sum_of_numbers
和一个子程序print_numbers
。函数接收两个整数参数,并返回它们的和;子程序接收一个整数参数,并循环打印出一系列数字。
结语
本教程提供了Fortran编程的基础知识和示例代码,希望能帮助您快速入门Fortran编程。Fortran是一门强大的科学计算语言,掌握它将有助于您在科学和工程领域进行高效的数值计算和数据处理。希望您能喜欢本教程,并继续深入学习Fortran编程的高级特性和应用。
本文来自极简博客,作者:浅笑安然,转载请注明原文链接:Fortran编程入门教程