for (int a = 0; a < 10; a++)
{
for (int b = 0; b < 10; b++)
{
for (int c = 0; c < 10; c++)
{
for (int d = 0; d < 10; d++)
{
int num = a * 1000 + b * 100 + c * 10 + d;
string mystroka = num.ToString("D4");
Console.WriteLine(mystroka);
switch (num)
{
case 12:
a = 0;
b = 0;
c = 9;
d = 9;
break;
case 193:
a = 0;
b = 1;
c = 9;
d = 9;
break;
case 202:
a = 0;
b = 2;
c = 9;
d = 9;
break;
default:
break;
}
}
}
}
}
как переделать эту часть, чтобы было бы вот так: switch (num)
{
case 12:
a = 0;
b = 0&&b=1&&b=2; //остальное аналогично
c = 9;
d = 9;
break;
default:
break;
}
Цикл прописать как-то для b
, чтобы не писать энтое кол-ство кейсов..
Кажется, я начинаю понимать, что вам нужно. НО
Итак, я понял так, что вы не хотите в каждом кейсе дублировать работу. Вы можете сделать так:
for (int a = 0; a < 10; a++)
{
for (int b = 0; b < 10; b++)
{
for (int c = 0; c < 10; c++)
{
for (int d = 0; d < 10; d++)
{
int num = a * 1000 + b * 100 + c * 10 + d;
string mystroka = num.ToString("D4");
Console.WriteLine(mystroka);
bool matched = false;
switch (num)
{
case 12:
b = 0;
matched = true;
break;
case 193:
b = 1;
matched = true;
break;
case 202:
b = 2;
matched = true;
break;
default:
break;
}
if (matched)
{
a = 0;
c = 9;
d = 9;
}
}
}
}
}
Теперь в кейсах вы меняете только b и флаг. Кейсы стали чуть короче, вся программа выросла на 2 строчки.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Чтобы я не делал у меня не получается опубликовать приложениеРаботаю в Visual Studio 2017, использовал встроенный шаблон Angular
Как организовать доступ между двумя формами в C#, не нарушая инкапуляцию?
Помогите сделать циклический алгоритм на C# Console
Есть объект у закрытой библиотеке, на событие которого я подписываюсь, но оно возникает в основном потокеИ поэтому я не могу использовать...