You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

This example is meant as a helpfull guide to see how Fortran looks in practice. And will show how to use subroutines, precision and simple arithmetic functions in fortran. 


Main
program main
implicit none
	call menu()
end program main

recursive subroutine menu() !'recursive' is needed if the subroutine or function will call itself either directly or implicit
integer :: choice
logical :: valid !A boolean to indicate if the input is valid (.TRUE. or .FALSE.)
print *, '--------------------'
print *, '-----Calculator-----'
print *, '--------------------'
print *, 'Addition 1'
print *, 'Subtraction 2'
print *, 'Multiplication 3'
print *, 'Division 4'
print *, 'High precision division 5'
print *, 'Power 6'
print *, 'Terminate 0'
valid = .FALSE. !Make shure the while loop runs atleast once
do while (.NOT.valid)
read *, choice
valid = .TRUE.
if (choice == 1) then
call addition()
else if (choice == 4) then
call division()
else if (choice == 5) then
call hp_division()
else if (choice == 6) then
call power()
else if (choice == 0) then
print *, 'Program finished'
else
print *, 'False input, please enter valid input: '
valid = .FALSE.
end if
end do
end subroutine menu

Page content



  • No labels