Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
23 / 26 / 19
Регистрация: 24.12.2014
Сообщений: 1,171
1

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

28.11.2016, 00:11. Просмотров 1328. Ответов 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
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.11.2016, 00:11
Ответы с готовыми решениями:

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

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

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

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

32
Си-решеточник
139 / 133 / 60
Регистрация: 07.02.2011
Сообщений: 669
28.11.2016, 01:21 2
Всё бы хорошо, но я ничего не понял? Что сделать то надо? Сделать цикл в цикле что-ли?
0
22 / 20 / 13
Регистрация: 19.07.2015
Сообщений: 99
28.11.2016, 02:19 3
А в чем проблема записать в первом цикле нужную переменную, а потом использовать ее в другом? (Если я правильно понял вопрос)
0
23 / 26 / 19
Регистрация: 24.12.2014
Сообщений: 1,171
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
Эксперт .NET
8440 / 5849 / 987
Регистрация: 21.01.2016
Сообщений: 22,244
28.11.2016, 09:49 5
chaleureux, сохранил куда?
0
209 / 206 / 146
Регистрация: 20.11.2014
Сообщений: 1,155
28.11.2016, 09:56 6
Цитата Сообщение от chaleureux Посмотреть сообщение
что сюда можно засунуть, чтобы цикл сохранил числа от 1 до 50
Добавить в массив, список, файл
0
23 / 26 / 19
Регистрация: 24.12.2014
Сообщений: 1,171
28.11.2016, 09:56  [ТС] 7
Usaga, Не сохранял ещё, хочу узнать куда можно сохранить его?
0
Эксперт .NET
8440 / 5849 / 987
Регистрация: 21.01.2016
Сообщений: 22,244
28.11.2016, 09:57 8
chaleureux, куда тебе надо, туда и можно сохранить. Ну и вопрос.
0
23 / 26 / 19
Регистрация: 24.12.2014
Сообщений: 1,171
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
Эксперт .NET
8440 / 5849 / 987
Регистрация: 21.01.2016
Сообщений: 22,244
28.11.2016, 18:06 10
chaleureux, ты будешь смеяться, но так и не понял, что и зачем ты хочешь сделать
0
23 / 26 / 19
Регистрация: 24.12.2014
Сообщений: 1,171
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
Си-решеточник
139 / 133 / 60
Регистрация: 07.02.2011
Сообщений: 669
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
23 / 26 / 19
Регистрация: 24.12.2014
Сообщений: 1,171
29.11.2016, 10:52  [ТС] 13
Есть 1 проблема цифры выводятся но не правильно: В порядке мне нужно сверху в низ выводить от 1 до 50!
Но получилась каша с вашим методом), что исправить?
Вот так у меня вывод получается:
0
Изображения
 
Си-решеточник
139 / 133 / 60
Регистрация: 07.02.2011
Сообщений: 669
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
Миниатюры
Как перепрыгнуть новый цикл  
23 / 26 / 19
Регистрация: 24.12.2014
Сообщений: 1,171
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
Эксперт .NET
8440 / 5849 / 987
Регистрация: 21.01.2016
Сообщений: 22,244
29.11.2016, 12:01 16
Сложный ты товарищ, chaleureux. Нет, чтобы словами объяснить, что ты хочешь сделать.
0
23 / 26 / 19
Регистрация: 24.12.2014
Сообщений: 1,171
29.11.2016, 12:06  [ТС] 17
Usaga, А что не понятного я объяснил, ты хотя бы читал внимательно, почему-то другие понимают))
Я пытаюсь вывести список чисел в столб от 1 до 50
1
2
3
4 и.т.д
Но простыми методами не получается, потому что в классе используется много циклов, и если я их совмещаю с выше описанным способом, то получается крякозябра)
Мне нужен оригинальный способ сделать вывод!
Подскажите другие варианты, например как можно запустить цикл, пропустить его затем на другой цикл, или остановить цикл который был запущен после прохода).
Да сложный я тип)) Не для слабонервных)
0
Эксперт .NET
8440 / 5849 / 987
Регистрация: 21.01.2016
Сообщений: 22,244
29.11.2016, 12:15 18
Цитата Сообщение от chaleureux Посмотреть сообщение
А что не понятного я объяснил, ты хотя бы читал внимательно, почему-то другие понимают))
Нет, если бы тебя поняли, то сразу бы корректно ответили.

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

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

Надеюсь ты мою мысль понял.
0
Си-решеточник
139 / 133 / 60
Регистрация: 07.02.2011
Сообщений: 669
29.11.2016, 13:54 19
Цитата Сообщение от chaleureux Посмотреть сообщение
Здесь остановить!
Ну, цикл останавливается оператором break, так что можно. Но зачем?
В общем, я согласен с товарищем выше: в коде что-то намудрено такого, без чего можно было вполне обойтись, его следует пересмотреть и переделать.
0
23 / 26 / 19
Регистрация: 24.12.2014
Сообщений: 1,171
29.11.2016, 20:02  [ТС] 20
Конечно намудрено) Я же бог всякого дерь** написать)
Ладно по делУ:
Скажите куда по мимо List<int> и StringBuilder можно занести цикл for ? ( Точный ответ) А не куда хотите, я в душе не Е** куда его запихнуть, довели нервы_)))))
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
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 - 2021, vBulletin Solutions, Inc.