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

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

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