Вроде всё написано нормально, но никак не могу найти ошибку в логике. Помогите, пожалуйста..