Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
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.
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
program main implicit none call menu() end program main | ||||||
Code Block | ||||||
|
recursive
subroutine
menu()
integer :: choice integer :: valid = 0 print *,!'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
Panel | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
|
BibTeX Display Table |
---|