Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
chaleureux
21 / 24 / 19
Регистрация: 24.12.2014
Сообщений: 1,132
1

Как перепрыгнуть новый цикл

28.11.2016, 00:11. Просмотров 1018. Ответов 32
Метки нет (Все метки)

Как мне создать цикл чтобы можно было влепить его в StringBuilder не задеваю другие циклы)))
Через
C#
1
StringBuilder dd = new StringBuilder();
У меня есть пару циклов которые выполняют основную функцию:
C#
1
2
3
4
5
6
7
8
9
10
11
for (int y = 0; y < List.Count; y++)
{
   try { catch} // далее 2-й цикл
   for (int i = 0; i <= (Database.Base - 1); i++)
   {
      // тут выполняется основная функция!
        dd.AppendLine("<tr>html функция + тут что из другого цикла цифры нужны от 1 до 50" + "</tr>");
      // И тут мне нужно присвоить значение из нужного мне цикла, чтобы 2 этих не дергали друг-друга!
     // Возможно ли это?)  
   }
}
Добавлено через 6 минут
Я пробовал сделать так:
C#
1
2
3
4
for (int v = 1; v < 50; v++)
{
    dd.AppendLine("<tr>html функция + v.ToString() " + "</tr>");
}
Но используя цикл в другом цикл они смешиваются и получается каша!
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2016, 00:11
Ответы с готовыми решениями:

Как перепрыгнуть кадр 2 и выполнить код в кадре 3
Я создал 1 кадр и в нем создал мувиклип, который передвигаю по оси икс box.x +=10;. Следущий кадр я...

Как программно перепрыгнуть из одной учетки винды в другую?
Есть 2 или загруженных учетных записи пользователя винды, как программно перепрыгнуть из одной...

Как обмануть компилятор и "перепрыгнуть через функцию"?
Известно, что адрес возврата из функции сохраняется на стеке. (В данном эксперименте мы отключим...

Нужно перепрыгнуть строку
Проблема такая, есть скрипт он должен открывать клиент игры, а за место этого он открывает браузер....

32
Rameron
Си-решеточник
138 / 132 / 60
Регистрация: 07.02.2011
Сообщений: 665
28.11.2016, 01:21 2
Всё бы хорошо, но я ничего не понял? Что сделать то надо? Сделать цикл в цикле что-ли?
0
ByMedion
22 / 20 / 13
Регистрация: 19.07.2015
Сообщений: 99
28.11.2016, 02:19 3
А в чем проблема записать в первом цикле нужную переменную, а потом использовать ее в другом? (Если я правильно понял вопрос)
0
chaleureux
21 / 24 / 19
Регистрация: 24.12.2014
Сообщений: 1,132
28.11.2016, 09:45  [ТС] 4
Подскажите правильно ли я делаю?!
Хочу сделать отдельно пример:
C#
1
2
3
4
5
6
7
 public static string RandomStr(int Counter)
    {
        for (int v = 1; v < Counter; v++)
        {
            //что сюда можно засунуть, чтобы цикл сохранил числа от 1 до 50 
        }
    }
0
Usaga
Эксперт .NET
6977 / 4886 / 833
Регистрация: 21.01.2016
Сообщений: 18,714
Завершенные тесты: 2
28.11.2016, 09:49 5
chaleureux, сохранил куда?
0
bbq
204 / 202 / 145
Регистрация: 20.11.2014
Сообщений: 1,133
28.11.2016, 09:56 6
Цитата Сообщение от chaleureux Посмотреть сообщение
что сюда можно засунуть, чтобы цикл сохранил числа от 1 до 50
Добавить в массив, список, файл
0
chaleureux
21 / 24 / 19
Регистрация: 24.12.2014
Сообщений: 1,132
28.11.2016, 09:56  [ТС] 7
Usaga, Не сохранял ещё, хочу узнать куда можно сохранить его?
0
Usaga
Эксперт .NET
6977 / 4886 / 833
Регистрация: 21.01.2016
Сообщений: 18,714
Завершенные тесты: 2
28.11.2016, 09:57 8
chaleureux, куда тебе надо, туда и можно сохранить. Ну и вопрос.
0
chaleureux
21 / 24 / 19
Регистрация: 24.12.2014
Сообщений: 1,132
28.11.2016, 17:53  [ТС] 9
Я пробовал по разному, но не получается, дело в том что если я использую просто так например:
C#
1
2
3
4
for (int v = 1; v < 50; v++)
{
    dd.AppendLine("<tr>html функция + v.ToString() " + "</tr>");
}
Без других циклов то всё работает!
Поэтому единственный вариант остаётся не внутри ставить ещё 1 цикл, а отдельно его сделать, как на подобие рандом
C#
1
2
3
4
public static string RandomStr(int Lenght)
{
   return new Random().Next(Lenght).ToString();
}
Чтобы метод возвращал значения, и теперь я не могу сообразить как сделать на подобие рандома, к примеру либо через List<> или ещё что нибудь, чтобы можно было занести!
Увидел где-то что можно так сделать, но не помогло:

C#
1
2
3
4
5
6
7
8
9
 public static List<int> mylist = new List<int>();
    public static string GoLif()
    {
        for (int v = 1; v < 50; v++)
        {
            mylist.Add(v);
        }
        return mylist.ToString();
    }
Прошу помощи, как сделать на подобие с последним примером))
0
Usaga
Эксперт .NET
6977 / 4886 / 833
Регистрация: 21.01.2016
Сообщений: 18,714
Завершенные тесты: 2
28.11.2016, 18:06 10
chaleureux, ты будешь смеяться, но так и не понял, что и зачем ты хочешь сделать
0
chaleureux
21 / 24 / 19
Регистрация: 24.12.2014
Сообщений: 1,132
28.11.2016, 18:12  [ТС] 11
Usaga,Ладно ))
Есть строка:
C#
1
dd.AppendLine("<tr>html функция + v.ToString() " + "</tr>");
где
C#
1
v.ToString()
- это левый цикл.
Я же пытаюсь создать:
C#
1
2
3
4
5
public static string  v()
{
   // Здесь сделать цикл от 1 до 50
   // Теперь хочу понять куда его занести в List или в StringBuilder))
}
Я пробовал но получается на выходе
System.Collections.Generic.List`1[System.Int32]
0
Rameron
Си-решеточник
138 / 132 / 60
Регистрация: 07.02.2011
Сообщений: 665
29.11.2016, 00:30 12
Лучший ответ Сообщение было отмечено chaleureux как решение

Решение

Цитата Сообщение от chaleureux Посмотреть сообщение
Я пробовал но получается на выходе
Конечно получается. Ты пытаешься список привести в формат строки, по умолчанию метод ToString() в этом случае возвращает тип переменной, то есть, собственно, сам список (System.Collections.Generic.List`1) и тип его переменных (Int32). Чтобы получить именно содержимое списка, то надо написать как-то так:
C#
1
2
3
4
5
6
7
8
9
10
public static string GoLif()
        {
            List<int> mylist = new List<int>();
 
            for (int v = 1; v < 50; v++)
            {
                mylist.Add(v);
            }
            return string.Join(" ", mylist.ToArray());
        }
1
chaleureux
21 / 24 / 19
Регистрация: 24.12.2014
Сообщений: 1,132
29.11.2016, 10:52  [ТС] 13
Есть 1 проблема цифры выводятся но не правильно: В порядке мне нужно сверху в низ выводить от 1 до 50!
Но получилась каша с вашим методом), что исправить?
Вот так у меня вывод получается:
0
Изображения
 
Rameron
Си-решеточник
138 / 132 / 60
Регистрация: 07.02.2011
Сообщений: 665
29.11.2016, 11:21 14
C#
1
2
3
4
5
6
7
8
9
10
11
class Program
    {
        static void Main(string[] args)
        {
            StringBuilder dd = new StringBuilder();
            for (int v = 1; v < 50; v++)
                dd.AppendLine(string.Format("<tr>html функция {0}</tr>", v));
            Console.WriteLine(dd.ToString());
            Console.ReadKey();
        }
    }
0
Миниатюры
Как перепрыгнуть новый цикл  
chaleureux
21 / 24 / 19
Регистрация: 24.12.2014
Сообщений: 1,132
29.11.2016, 11:45  [ТС] 15
Rameron, Я так делал, да так работает, но проблема в том что если я запихну цикл в другой цикл то получится каша, как я и описал выше)
Скажите можно ли остановить цикл после:
C#
1
2
for (int v = 1; v < 50; v++)
dd.AppendLine(string.Format("<tr>html функция {0}</tr>", v));
Здесь остановить!
0
Usaga
Эксперт .NET
6977 / 4886 / 833
Регистрация: 21.01.2016
Сообщений: 18,714
Завершенные тесты: 2
29.11.2016, 12:01 16
Сложный ты товарищ, chaleureux. Нет, чтобы словами объяснить, что ты хочешь сделать.
0
chaleureux
21 / 24 / 19
Регистрация: 24.12.2014
Сообщений: 1,132
29.11.2016, 12:06  [ТС] 17
Usaga, А что не понятного я объяснил, ты хотя бы читал внимательно, почему-то другие понимают))
Я пытаюсь вывести список чисел в столб от 1 до 50
1
2
3
4 и.т.д
Но простыми методами не получается, потому что в классе используется много циклов, и если я их совмещаю с выше описанным способом, то получается крякозябра)
Мне нужен оригинальный способ сделать вывод!
Подскажите другие варианты, например как можно запустить цикл, пропустить его затем на другой цикл, или остановить цикл который был запущен после прохода).
Да сложный я тип)) Не для слабонервных)
0
Usaga
Эксперт .NET
6977 / 4886 / 833
Регистрация: 21.01.2016
Сообщений: 18,714
Завершенные тесты: 2
29.11.2016, 12:15 18
Цитата Сообщение от chaleureux Посмотреть сообщение
А что не понятного я объяснил, ты хотя бы читал внимательно, почему-то другие понимают))
Нет, если бы тебя поняли, то сразу бы корректно ответили.

Цитата Сообщение от chaleureux Посмотреть сообщение
Но простыми методами не получается, потому что в классе используется много циклов, и если я их совмещаю с выше описанным способом, то получается крякозябра)
Самый очевидный способ решить эту "проблему" - не создавать её. Из твоего описания не очень понятно, зачем это делается. Может всё иначе можно сделать, проще и элегантнее.

Могу посоветовать (слабо понимая, что происходит) завернуть твой "выводящий числа" цикл в отдельный объект класса, который будет помнить своё состояние (помнить, на каком числе остановился) и выводить на экран (или куда тебе надо) только определённое количество чисел по команде извне. Так ты сможешь полностью управлять этим... циклом. Останавливать и возобновлять вывод в любой момент в любом месте, лишь бы была ссылка на данный объект.

Надеюсь ты мою мысль понял.
0
Rameron
Си-решеточник
138 / 132 / 60
Регистрация: 07.02.2011
Сообщений: 665
29.11.2016, 13:54 19
Цитата Сообщение от chaleureux Посмотреть сообщение
Здесь остановить!
Ну, цикл останавливается оператором break, так что можно. Но зачем?
В общем, я согласен с товарищем выше: в коде что-то намудрено такого, без чего можно было вполне обойтись, его следует пересмотреть и переделать.
0
chaleureux
21 / 24 / 19
Регистрация: 24.12.2014
Сообщений: 1,132
29.11.2016, 20:02  [ТС] 20
Конечно намудрено) Я же бог всякого дерь** написать)
Ладно по делУ:
Скажите куда по мимо List<int> и StringBuilder можно занести цикл for ? ( Точный ответ) А не куда хотите, я в душе не Е** куда его запихнуть, довели нервы_)))))
0
29.11.2016, 20:02
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.11.2016, 20:02

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Новый цикл for в C++11
/* Этот пример мне абсолютно понятен */ // C++98 for( vector&lt;double&gt;::iterator i = v.begin(); i...

Может ли конь за один ход перепрыгнуть с одного поля на другое
Помогите составить программку: Даны координаты 2 шахматных полей.Может ли конь за один ход...

Создать программу по всем 3 видам циклов...цикл с параметром,цикл с условием,цикл,и цикл с предусловием...
Найти сумму чисел 1 в квадрате до 10 c квадрате...операцию возведению в степень не использовать...

Разбить цикл записи на отрезки по 1000 строк в каждый новый файл
Господа, подскажите плж следующую весчь. имеется цикл строковой записи в файл. Строк например...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.