Нехорошо давать готовое решение, однако в данном случае оно настолько короткое, что намек на него ничем от решения не отличается.
При разумном хранении данных результат можно получить в одну строчку.
Данные можно хранить в массиве структур вроде такого (индекс массива - номер дня):
type Bearing
character :: Course ! Направление - N,W,S,E
real :: Velocity ! Скорость
end type Bearing
type(Bearing),dimension(10) :: Dat
Соответственно, искомое количество считается как
count(Dat%Velocity>8.0 .and. Dat%Course=='S')
Ввод данных делайте сами, это несложно.