Я попробовал запустить этот код и определить, какие значения будут напечатаны программой. Результаты я запишу в последовательности их вывода через один пробел.Первоначально у нас есть строка ″77777″ и пустой список mass2.1. Входящая строка содержит ″77″, поэтому внутри цикла будет выполнено условие и код внутри блока else будет выполнен. Строка ″77″ будет заменена на ″33″ и добавлена в список mass2. Таким образом, наш список mass2 содержит ″33333″.2. Входящая строка снова содержит ″77″. Опять же, условие внутри цикла выполнится, и строка ″77″ будет заменена на ″33″. Строка ″33333″ также будет добавлена в список mass2. Теперь список mass2 содержит ″33333 33333″.
3. Входящая строка снова содержит ″77″. Условие выполнится, и строка ″77″ будет заменена на ″33″. Строка ″33333″ будет добавлена в список mass2. Список mass2 теперь содержит ″33333 33333 33333″.
4. Входящая строка больше не содержит ″77″, но она содержит ″333″. Условие выполнено и строка ″333″ будет заменена на ″7″. Строка ″777″ добавляется в список mass2, который теперь содержит ″33333 33333 33333 777″.
5. Наконец, входящая строка становится ″777″ и оба условия внутри цикла не выполнены. Цикл завершается. Строка ″777″ и количество элементов в списке mass2 (равное 4) будут напечатаны.
Окончательный вывод программы будет ″777 4″.
Я надеюсь, что ясно объяснил последовательность вывода значений программой. Если остались вопросы, пожалуйста, не стесняйтесь спрашивать.
[Вопрос решен] Определите, какие значения напечатает программа. В ответе...
Определите, какие значения напечатает программа. В ответе запишите числа в последовательности их вывода через один пробел.
string mass = “77777”;
List mass2 = new List();
while (mass.Contains(“333”) || mass.Contains(“77”))
{
if (mass.Contains(“333”))
{
mass = mass.Replace(“333”, “7”);
mass2.Add(mass);
}
else
{
mass = mass.Replace(“77”, “33”);
mass2.Add(mass);
}
}
Console.WriteLine(mass ” ” mass2.Count);
Console.ReadKey();
(1) Смотреть решение