Компилятор ругается на невыполнение 3 и 4 условий. Нисходящее преобразование не запрещено условиями задачи. Может быть Swich-case ему не нравится и ожидается решение через if-else? Как считаете?