Задать вопрос
@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;
  • Вопрос задан
  • 886 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 2
    1 неделя
    Далее
Решения вопроса 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 для выполнения условия.
                }
            }
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы