На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Страницы: (32) « Первая ... 5 6 [7] 8 9 ...  31 32  ( Перейти к последнему сообщению )  
> goto vs break & continue , Кроха-сын пришел к отцу и спросила кроха: "goto - это хорошо?"
    Не, там неправильно было.
      Цитата Qraizer @
      Переходить по goto в середину вложенных циклов...

      Изыйди, аццкий сотона. Чур меня, чур! :wall:
        Жесть какая. Сколько левого то написали.
        Суть то простая до неприличия: По закону Мерфи 90% циклов в программе - одинарные, 9% - двойные, 0,9% - тройные и т.д.
        Посему я и хотел всего лишь второй уровень забацать, чтобы работалось легко не в 90%, а в 99% случаев. Всего и идей то !!!
          Возможно, уже говорили, но в PHP (или еще где, уже не помню), можно написать
          ExpandedWrap disabled
            break(2)

          т.е. выход из двух циклов
            Цитата Славян @
            По закону Мерфи 90% циклов в программе - одинарные, 9% - двойные, 0,9% - тройные и т.д
            Странный какой-то у вас закон. Закон Мерфи для циклов в C++, на самом деле, звучит так:
            В любом цикле с вложенностью два и больше обязательно появится необходимость выйти из самого внутреннего за пределы самого внешнего.
            Сообщение отредактировано: applegame -
              Цитата applegame @
              В любом цикле с вложенностью два и больше обязательно появится необходимость выйти из самого внутреннего за пределы самого внешнего.
              Не в любом. В алгоритме Флойда не надо :)
                Цитата OpenGL @
                Не в любом. В алгоритме Флойда не надо :)
                По закону Мерфи - в любом. ;) http://ru.wikipedia.org/wiki/Закон_Мёрфи
                  Я просто взял часть закона:
                  В любой, казалось бы работающей программе, 90% циклов - одинарные и выход из них есть, но в 10%, 1%, ...случаев - это двойные, тройные и т.д. циклы, из которых
                  Цитата applegame @
                  обязательно появится необходимость выйти из самого внутреннего за пределы самого внешнего
                  , и вот тут то прога и ...
                  Сообщение отредактировано: Славян -
                    В наиболее общем виде закон Мёрфи можно наверно сформулировать так: "Если неприятность в принципе может случиться, она обязательно произойдет".
                      Цитата amk @
                      В наиболее общем виде закон Мёрфи можно наверно сформулировать так: "Если неприятность в принципе может случиться, она обязательно произойдет".

                      Такой же перевод и в вике, хотя мне больше нравится более дословный: "если что-то может пойти не так, то оно обязательно пойдет (не так)"
                        Даже если вас невозможно понять неправильно, все равно найдется человек который поймет вас неправильно.
                          Цитата KILLER @
                          :bad:


                          Может тебе еще не нравится оператор "goto"?! >:(

                          Это сообщение было перенесено сюда или объединено из темы "Использование глобальных const char*"
                            KILLER, :blush:
                            Скрытый текст
                            Цитата KILLER @
                            :bad: :bad: :bad: :bad: :bad:

                            Лан ... давай посмотрим, вот задачка. Нужно реализовать сей алгоритм управления:
                            user posted image
                            a,b,c - флажки состояния, A,B,C,D,E - функции-обработчики, которые изменяют флажки в том числе
                            Реализация с GOTO:
                            ExpandedWrap disabled
                              int main() {
                                bool a = false, b=false, c=false;
                                if (a) {
                                  A();
                                  goto L3;
                                }
                                L1:
                                if (b) {
                                  L2:
                                  B();
                                  L3:
                                  C();
                                  goto L1;
                                } else
                                if (!c) {
                                  D();
                                  goto L2;
                                }
                                E();
                                return 0;
                              }


                            Давай почитаем ТВОЙ КОД без GOTO?
                            И убедительнейшая просьба - давай просто код, про корабли, бороздящие просторы вселенной не надо, летали - знаем! :lol:


                            Это сообщение было перенесено сюда или объединено из темы "Использование глобальных const char*"
                              Цитата JoeUser @
                              Лан ... давай посмотрим, вот задачка. Нужно реализовать сей алгоритм управления:

                              Как то так?
                              ExpandedWrap disabled
                                #include <iostream>
                                 
                                void A()
                                {
                                    std::cout << "A" << std::endl;
                                }
                                 
                                void B()
                                {
                                    std::cout << "B" << std::endl;
                                }
                                 
                                void C()
                                {
                                    std::cout << "C" << std::endl;
                                }
                                 
                                void D()
                                {
                                    std::cout << "D" << std::endl;
                                }
                                 
                                void E()
                                {
                                    std::cout << "E" << std::endl;
                                }
                                 
                                int main()
                                {
                                    bool a = false, b=false, c=false;
                                    if(a)
                                    {
                                        A();
                                        C();
                                    }
                                    else
                                    {
                                        while(b)
                                        {
                                            B();
                                            C();
                                            if (! b && !c)
                                            {
                                                D();
                                                B();
                                                C();
                                            }
                                            else
                                            {
                                                E();
                                                break;
                                            }
                                        }
                                    }
                                    return 0;
                                }

                              Я в твоем коде с метками, вообще ничего не понял. Имхо за такой код руки отрывать нужно и обратно в жопу засовывать, откуда они собственно и выросли.

                              Добавлено
                              Да и твоя схема на картинке слишком мутная тоже, обычно есть задача - ее и решаем. А у тебя на схеме те же метки нарисованы. Что реализацию, что схема - гавно. Хрен что разберешь.

                              Это сообщение было перенесено сюда или объединено из темы "Использование глобальных const char*"
                              Сообщение отредактировано: KILLER -
                                Цитата KILLER @
                                в жопу засовывать, откуда они собственно и выросли

                                Несколько быдловатая манера общения, ну да ладно ...

                                Я тебя просил привести работающий код, а ты что состряпал?

                                ExpandedWrap disabled
                                  int main()
                                  {
                                      bool a = false, b=false, c=false;
                                      if(a)
                                          // ЕСЛИ СЮДА НЕТ ПЕРЕХОДА ИЗ КОДА ПОСЛЕ, ЗАЧЕМ ЭТОТ БЛОК В ПРИНЦИПЕ?
                                          // a == false на входе же, сразу после инициализации, блок никогда не будет исполнен!
                                      {
                                          A();
                                          C();
                                      }
                                      else ........


                                По твоему коду a == false и b == false - сразу выход, а "с" кто проверять будет???.
                                Садись, двойка!

                                Это сообщение было перенесено сюда или объединено из темы "Использование глобальных const char*"
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (32) « Первая ... 5 6 [7] 8 9 ...  31 32


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0512 ]   [ 15 queries used ]   [ Generated: 7.05.24, 11:58 GMT ]