@gleb_oj

Как вставить переменную в case, если выдаёт ошибку: «Требуется постоянное значение»?

int d = Convert.ToInt32(Console.ReadLine());
int g = d % 2;
if (g == 0)
{
for (int s = g; s < 20; s++) ;
switch (s)
{
case s: s = 0;
break;
  • Вопрос задан
  • 802 просмотра
Решения вопроса 1
Morpheus_God
@Morpheus_God
Конструкция switch/case подразумевает то, что значение переданное в switch будет изначально известным.
По сути каждый case это константа.
Попробуйте переписать под if/else и вам сразу станет понятно почему так происходит.
Ваш код
int d = Convert.ToInt32(Console.ReadLine());
            int g = d % 2;
            if (g == 0)
            {
                for(int s = g; s < 20; s++)
                {
                    if(s) // тут уже не понятно с чем сравнивать вашу s для выполнения условия.
                }
            }
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы