23 lines
528 B
Plaintext
23 lines
528 B
Plaintext
program bottles
|
|
|
|
implicit none
|
|
integer :: nbottles
|
|
|
|
do nbottles = 99, 1, -1
|
|
call print_bottles(nbottles)
|
|
end do
|
|
|
|
contains
|
|
|
|
subroutine print_bottles(n)
|
|
implicit none
|
|
integer, intent(in) :: n
|
|
|
|
write(*, "(I0, 1X, 'bottles of beer on the wall,')") n
|
|
write(*, "(I0, 1X, 'bottles of beer.')") n
|
|
write(*, "('Take one down, pass it around,')")
|
|
write(*, "(I0, 1X, 'bottles of beer on the wall.', /)") n - 1
|
|
end subroutine print_bottles
|
|
|
|
end program bottles
|