1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
|
program cond_03
implicit none
integer :: a = 1, b = 2
integer, parameter :: ap = 1, bp = 2
real :: c = 1.0, d = 2.0
real, parameter :: cp = 1.0, dp = 2.0
integer :: marks
integer, parameter :: marks_fixed = 94
! local variable declaration
character, parameter :: grade_fixed = 'B'
select case (grade_fixed)
case ('A')
print*, "Excellent!"
case ('B')
if( a == b ) then
print *, "a == b"
if( ap == bp ) then
print *, "ap == bp"
else
print *, "ap /= bp"
end if
else if( ap == cp ) then
print *, "ap == cp"
if( cp == dp ) then
print *, "cp == dp"
else
print *, "cp /= dp"
end if
else if( c == d ) then
print *, "c == d"
end if
case ('C')
print*, "Well done"
case ('D')
print*, "You passed"
case ('F')
print*, "Better try again"
case default
print*, "Invalid grade"
end select
print*, "Your grade is ", grade_fixed
marks = 94
select case (marks)
case ((40 + bp):)
print *, "Pass!"
case (:(39 - ap))
print *, "Failed!"
case default
print*, "Invalid marks"
end select
print*, "Your marks are ", marks
select case (marks_fixed)
case ((40 + bp):)
print *, "Pass!"
case (0:(39 - ap))
print *, "Failed!"
case default
print*, "Invalid marks"
end select
print*, "Your marks are ", marks
end
|