Змея / Говнокод #12 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
temp = a
a = b
b = temp

Запостил: SvartalF SvartalF, (Updated )

Комментарии (90) RSS

  • Shock:
    Перед выполнением, допустим:
    a = 'A-Value', b = 'B-Value';
    temp = a
    a = b
    b = temp
    a == 'B-Value', b == 'A-Value';
    То есть эта функция меняет местами значение а и б.
    Ответить
  • Shock:
    Интересно, а работают тут бб-коды, или <b>хтмл-теги</b>, или какие-то другие *способы разметки*
    Ответить
  • Stilus:
    И что тут неправильного? Бывают же случаи когда надо менять местами значения переменных.
    Ответить
  • на себя посмо:
    говнокодер тот, кто посчитал этот пример говнокодом. Автор, учи матчасть.
    Ответить
  • PooH:
    Господа успокойтесь, это действительно говонокод. На питоне пишут так:
    a, b = b, a
    Ответить
  • anonymous:
    Питонщеги знают, почему это говнокод.
    Ответить
  • питон слабо знаю, но тут чуть не обоссался
    Ответить
  • Veton:
    [quote=Говногость]питон слабо знаю, но тут чуть не обоссался[/quote]
    Энурез?
    Ответить
        • Побитовые круто, но если попадутся идентичные величины, будет весело.
          Ответить
          • > если попадутся идентичные величины
            Не вижу проблемы:
            // a = 42; b = 42;
            a ^= b;
            // a = 0; b = 42;
            b ^= a;
            // a = 0; b = 42;
            a ^= b;
            // a = 42; b = 42;
            Ответить
            • Притча во языцех

              Наверное каждый прогер решал эту задачу
              Ответить
              • > каждый прогер решал эту задачу
                Задача для юных программистов: Буратино дали 3 яблока, а потом одно яблоко забрали. Сколько яблок осталось у Буратино?
                Ответить
                • Ответ неизвестен. Мы не знаем, сколько у Буратино было яблок вначале. Может, он был кому-то должен пяток яблок?
                  Ну и там мораль обычно была про инициализацию переменных.
                  Ответить
                  • > Ответ неизвестен
                    > UB
                    Ок, тогда второй уровень: У Буратино было 5 яблок. Ему дали 3 яблока, а потом у него одно яблоко забрали. Сколько яблок осталось у Буратино?
                    Ответить
                      • > У кого забрали? Одно что забрали?
                        Ему дали 3 яблока, а потом у него одно яблоко забрали.
                        fxd
                        Ответить
                      • > Были ли конкурентные модификации числа яблок у Буратино?
                        Ага, сразу видно программиста 🙂

                        Он и правда за эти два интервала мог их съесть, отдать или взять у кого-то ещё.

                        P.S. А ещё он мог за это время умереть или не захотеть отдавать яблоки... 🙁
                        Ответить
                        • > Ага, сразу видно программиста 🙂
                          Умение смоделировать реальную ситуацию и обернуть её в исходный код -- важная особенность и достоинство программиста. Только вот никто не сказал, что модели, которые он создаёт, правильные.
                          Программист (а) добавляет в модели свои домыслы ("а сколько было?" из уровня 1, "а конкурентные модификации?" и "а ещё он мог умереть" из уровня 2), (б) плохо работает с недостаточно формализованными задачами. Поэтому в итоге рождаются программы, где отслеживается смерть Буратино и прочие факторы, но нельзя дать ему ещё пару яблок, ведь это не было указано в ТЗ.

                          Всё тлен.
                          Ответить
                          • Это всё оттого, что они используют неправильные языки. Вот в 'PHP' конкурентная модификация невозможна, буратино посреди работы не умрёт, а все переменные аккуратно инициализируются null'ом, который в арифметических операциях станет нулём. Всё интуитивно и красиво.

                            Переходите на 'PHP'!

                            > А вот на ПХП всё бы отработало правильно.
                            Хайвмайнд.
                            Ответить
                            • Вот хотя бы в том же C# можно посмотреть на приоритеты операций и написать однозначное выражение.
                              Ответить
                        • А еще яблоки могли испортится, не забывайте об этом
                          Ответить
                    • У Бормандино было 4 яблока. Ему дали 4i (мнимых) яблока, а потом одно мнимое яблоко у него забрали. Какая абсолютная величина яблок осталась у Бормандино?
                      Ответить
                      • вопрос 2
                        Какой побочный эффект у Бормандино вызовет работа с мнимыми яблоками?
                        Ответить
                        • >Какой побочный эффект у Бормандино вызовет работа с мнимыми яблоками?
                          Может покраснение кожи или сыпь. Про побочные эффекты лучше читать на упаковке.
                          Ответить
                          • Мне кажется, что если долго оперировать мнимыми яблоками можно попасть в дурку
                            Ответить
                            • Представим мнимое яблоко, описанное прямоугольным параллелепипедом с комплексными длиной, шириной и высотой. Параллелепипед повёрнут относительно нас на некоторые углы. Представили?
                              Шестимерное пространство. Увозите.
                              Ответить
          • в питоне на самом деле всё передается по ссылке, но это деталь реализации
            семантически верно делить типы на изменяемые и неизменяемые (скалярные и всякие кортежи)
            Ответить
        • А, ещё они хотят, чтобы все россизйские сайты хостились на ьроссийских серверах, и всем установить по анальнаому зонду и слушать весь пердёж. А виной всему —– боязнь, что нам отрубят внешние инткернеты.

          Блять, пусть сраные политики не лезут в упраээвление интернетами! Ни наши, ни првочие!
          Ответить
          • Путешествия: Туристические Агенства

            TRAVELMIR/GREEN LIGHT TOURS TRAVELMIR/GREEN LIGHT TOURS
            Агентство, которое Вы искали
            http://www.travelmir.com

            1811 Avenue P.
            Brooklyn, NY 11229 (карта)
            Телефон: (718) 234-0787

            ALLIstanbulTours.com ALLIstanbulTours.com
            Одна нация Туристическое агентство здесь, чтобы служить своей поездки все через Турцию. Мы специализируемся на всех Турции Туры по ОАЭ, Эфес туры, туры Галлиполи, Анзак Однодневные экскурсии, туры ...
            http://www.allistanbultours.com

            255 West 36th Street, Suite 800 New York
            New York, NY 10018 (карта)
            Телефон: (800) 961-5117 Факс: 19175917556

            Ancore Transportation Services
            Транспортная компания , предоставляет 2013 года спринтер Мерседес ( 14 пассажиров ) для локальных и дальних экскурсий , туров , а так же , другие услуги ( свадьбы , дни рождения и тд. ) Мерседес ...

            12303 Runnymede st. #3
            North Hollywood, CA 91605 (карта)
            Телефон: (818) 326-9246 Факс: 818-760-8480

            EIH Travel Inc.
            Путешествия по Америке. Индивидуальные экскурсии (по ценам групповых) на машине от 2 до 12 человек. Не лежите на диване.Отправляйтесь с нами в путь. Что б забыть про все заботы и душою отдохнуть. ...
            http://www.usatravelru.com

            1821 Creekview Ln
            Jamison, PA 18929 (карта)
            Телефон: (267) 483-5289

            Hawaii with Russian Guide
            Звоните на Гаваи, говорим по русски телефон (808) 384-2076

            1255 Nuuanu
            Honolulu, HI 96817 (карта)
            Телефон: (808) 384-2076

            NEW TOURS USA NEW TOURS USA
            22 года в бизнесе. Принимающий тур оператор, все штаты США и Канада. Русские туры с ...
            http://www.newtours.us



            _____
            Ответить
            • Привет, ваш регион представляется как Краснодар.
              Купить лекарства в Краснодар: шишки, гидропонуку, гашиш, скорость, ск, кристаллы, амфетамин, MDMA, экстази, героин и метадон, кокаин (кокс). Мефедрон в кристаллах, мяу-мяу, меф. Всегда можно купить готовые закладки марихуаны и спайса. Реагент 1к40 и LSD.
              Оператор Telegram: @clubdrugs
              ОСТОРОЖНЕЕ! В сети появилось много фейков с нашем именем. Для того что бы не попасть на фейк оператора telegram, переходите на наш ник строго по ссылке выше!


              http://drugsclub.site/catalog/krasnodar

              __
              Ответить
    • Такие задачки ещё в школе на Турбо Паскакале решали 🙂
      Ответить
  • xengine:
    > Sotikov
    своими перлами делишься? 🙂
    а не проще a,b = a+b, a-b так ?
    Ответить
  • temoto:
    2xengine:
    это бессмысленно. Лучше
    a,b=b,a

    Его 3 строки не занимают лишней памяти, в отличие от
    a,b=b,a
    , и выполняются намного быстрее.

    Хотя экономить на таких вещах - пустая трата времени.
    Ответить
    • да как бы
      a, b = b, a
      выполняется быстрее, умник...
      тесты проводи сначала
      Ответить
  • nooob:
    a,b=b,a

    кроме всего прочего обменивает не только числа, но
    и строки и вообще любые обьекты.
    Ответить
  • Не сказал бы, что это говнокод. Хотя для питона не очень рационально, да.
    Ответить
  • Нафиг вообще так свопить в высокоуровневых языках. Больше похоже на академическую задачу для ничего
    Ответить
  • Даже на пиэйчпи можно прикольнее написать =)
    list($a, $b) = array($b, $a);
    Ответить
    • а смысл?) при таком раскладе помоему выделить 1 переменную, чем использовать 2 конструкции для работы с массивом...
      Ответить
  • Программистский свинг, бессмысленный и бепощадный XDDD
    Ответить
  • int main() {
       int a = 4, b = 7;
       a, b = b, a;
       printf("%d %d", a, b);
    }


    Всем привет.
    Подскажите пожалуйста, почему этот код выводит херню?

    Заранее спасибо.
    Ответить
    • Вот, пофиксил
      Не благодари

      int main() {
         int a = 4, b = 7;
         a, b = b, a;
         printf("%d %d", b, a);
      }
      Ответить

Добавить комментарий

Помни, guest, за тобой могут следить!

    А не использовать ли нам bbcode?


    8