1. C++ / Говнокод #286

    +848.7

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    int p,k,l,i,j,d,q,R,t,r;
      S1:    s=0; p=1;
      S2:    if (s==0) { i=1; j=n; k=n; l=2*n+1; }
             if (s==1) { i=n+1; j=2*n; k=0; l=n+1; }
             d=1; q=p; r=p;
      S3:    if (x[i]>K>x[j]->K) goto S8;
      S4:    k=k+d; x[k]=x[i]; c[k]=c[i];
      S5:    i+=1; q-=1; if (q>0) goto S3;
      S6:    k+=d; if (k==l) goto S13; else x[k]=x[j];c[k]=c[j];
      S7:    j-=1; r-=1; if (r>0) goto S6; else goto S12;
      S8:    k+=d; x[k]=x[j]; c[k]=c[j];
      S9:    j-=1; r-=1; if (r>0) goto S3;
      S10:   k+=d; if (k==l) goto S13; else x[k]=x[i];c[k]=c[i];
      S11:   i+=1; q-=1; if (q>0) goto S10;
      S12:   q=p; r=p; d=-d; t=k; k=l; l=t; if (j-i<p) goto S10; else goto S3;
      S13:   p+=p; if (p<n) { s=1-s; goto S2; }
             if (s==0) for (t=1; t<=n; t+=1) { x[t]=x[t+n];c[t]=c[t+n] }

    Вот такой вариант сортировки предложен в одной известной книге. Оно работает...

    Запостил: guest, 26 Декабря 2008

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

    • simon:
      прям машина тьюринга
      Ответить
    • dj Virus:
      а какого года книга?
      Ответить
    • D Mak:
      ниасилил, каменты б хотяб..
      Ответить
    • Володя:
      А чо, нормальная сортировка
      Ответить
    • coba:
      шо за книга???!!
      Ответить
    • Вроде, в каком-то из промышленных языков прошлого ставились целочисленные метки в начале строк, и IF позволял указывать метку; возможно код был портирован с этого языка.
      Ответить
      • Бэйсик промышленный язык?
        Ответить
        • Я писал на CamBasic - языке для промышленных контроллеров. Забавно, чё.
          Ответить
          • Спермобейсик?!
            Ответить
            • Назмозг ;) Не CumBasic, а CamBasic.

              P.S. Под CAM, видимо, понимается Computer-Aided Manufacturing
              Ответить
              • не, так не интересно
                Ответить
                • Кстати, данный говнокод случайно выдран не из исходников «J»? Уж больно похоже.
                  Ответить
        • В Бейсике (оригинальном, а не Quick/Visual) была бы пронумерована каждая строка.
          Ответить
    • taviscaron:
      basic )
      Ответить
    • ink:
      Освободите паццтул =)
      Ответить
    • Z:
      Профессиональный индус писал :)

      (хотя возможно через извращатель пропустили)
      Ответить
    • Мультикасса:
      Жесть какая... А представьте если подобное дебажить... О_о
      Ответить
    • J:
      васик жив =)
      Ответить
    • Volchara:
      Не дай бог такую книжку дети увидят...
      Ответить
    • Вообще-то, на древнем Фортране (ранее 1977) года не было блоковых конструкций. Поэтому приходилось писать что-то типа IF ... GOTO. По-другому никак нельзя было писать. Приходилось так извращаться. А код, был, вероятно, сконверчен из такого фортрана.
      Хотя вряд-ли. В Фортране только переменные, начинающиеся на i, j, k, l, m, n, являются целочисленными. А тут как целочисленные индексы использовались переменные на q, на r, на d и другие. К тому же Фортран не различает регистр символов.
      Ответить
    • valexey:
      > В Фортране только переменные, начинающиеся на i, j, k, l, m, n, являются целочисленными.

      Сколь я помню фортран, там это можно переопределить.
      Ответить
    • pxn:
      А какая книга?
      Ответить
    • Теперь понятно почему все стали считать GOTO моветоном
      Ответить
    • А какой это алгоритм сортировки? Я вообще не могу понять, но, судя по объему, - быстрая
      Ответить
      • Помоему это шейкерная сортировка на первый взгляд.
        Ответить
    • Обломитесь, товарищи :))) Ничо тут не сортируется :)
      Ахтунг, C++ в 6 строке ;)
      Ответить
    • Это коэн от господина Кнута, думаю знакомы. Думаю, знакомы.
      http://www.etsimo.uniovi.es/cscene/topics/algo/cs9-03.xml.html
      Ответить
    • Как будто суперкомпилятор поработал
      Ответить
    • Это код из моей проги ))) Приятно видеть )))
      Этот говнище код я выдрал из книги кнута - сортировка двусторонним слиянием.
      6я строка не работает посудите сами почему: x[i]>K>x[j]->K - тут нет указателей, это обычные переменные и массивы.
      Еще k не может принимать значения выше 500. хз почему. Я пытался исправить, но сами понимаете тут нечитаемо.
      Представьте себе я с этой херью сдавал прогу. Препод попросил объяснить как работает код ))) Я объяснял долго и безуспешно )
      Ответить
      • ………………………………………._ё„„„„_
        …………………….…………...„--~*'Ї…….'\
        ………….…………………… („-~~--„ё_….,/м'М
        …….…………………….ё„-^"Ї : : : : :ё-Ї"Ї/'
        ……………………ё„„-^"Ї : : : : : : : '\ё„„,-"
        **ЇЇЇ'^^~-„„„----~^*'"Ї : : : : : : : : : :ё-"
        .:.:.:.:.„-^" : : : : : : : : : : : : : : : : :„-"
        :.:.:.:.:.:.:.:.:.:.: : : : : : : : : : ё„-^Ї
        .::.:.:.:.:.:.:.:. : : : : : : : ё„„-^Ї
        :.' : : '\ : : : : : : : ;ё„„-~"
        :.:.:: :"-„""***/*'мё'Ї
        :.': : : : :"-„ : : :"\
        .:.:.: : : : :" : : : : \,
        :.: : : : : : : : : : : : 'М
        : : : : : : :, : : : : : :/
        "-„_::::_„-*__„„~"


        Buy cialis online
        Cialis (tadalafil) tablets to treat erectile dysfunction available to buy online in daily 2.5mg or 5mg strengths, and as required 10mg or 20mg strengths.
        How to buy online

        1.Read medical information about erectile dysfunction
        2. Answer medical questions to check for eligibility
        3. Reviewed by doctors - posted from UK pharmacy

        www.doctorfox.co.uk/erectile-dysfunction/cialis.html


        ~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~K-
        Ответить
    • всем вьибал по минусу
      Ответить
      • ………………………………………._ё„„„„_
        …………………….…………...„--~*'Ї…….'\
        ………….…………………… („-~~--„ё_….,/м'М
        …….…………………….ё„-^"Ї : : : : :ё-Ї"Ї/'
        ……………………ё„„-^"Ї : : : : : : : '\ё„„,-"
        **ЇЇЇ'^^~-„„„----~^*'"Ї : : : : : : : : : :ё-"
        .:.:.:.:.„-^" : : : : : : : : : : : : : : : : :„-"
        :.:.:.:.:.:.:.:.:.:.: : : : : : : : : : ё„-^Ї
        .::.:.:.:.:.:.:.:. : : : : : : : ё„„-^Ї
        :.' : : '\ : : : : : : : ;ё„„-~"
        :.:.:: :"-„""***/*'мё'Ї
        :.': : : : :"-„ : : :"\
        .:.:.: : : : :" : : : : \,
        :.: : : : : : : : : : : : 'М
        : : : : : : :, : : : : : :/
        "-„_::::_„-*__„„~"


        Buy cialis online
        Cialis (tadalafil) tablets to treat erectile dysfunction available to buy online in daily 2.5mg or 5mg strengths, and as required 10mg or 20mg strengths.
        How to buy online

        1.Read medical information about erectile dysfunction
        2. Answer medical questions to check for eligibility
        3. Reviewed by doctors - posted from UK pharmacy

        www.doctorfox.co.uk/erectile-dysfunction/cialis.html


        ~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~M-
        Ответить
    • Что-то уж больно знакомое. Кажется я видел оригинал на BASIC'е
      Ответить
      • ………………………………………._ё„„„„_
        …………………….…………...„--~*'Ї…….'\
        ………….…………………… („-~~--„ё_….,/м'М
        …….…………………….ё„-^"Ї : : : : :ё-Ї"Ї/'
        ……………………ё„„-^"Ї : : : : : : : '\ё„„,-"
        **ЇЇЇ'^^~-„„„----~^*'"Ї : : : : : : : : : :ё-"
        .:.:.:.:.„-^" : : : : : : : : : : : : : : : : :„-"
        :.:.:.:.:.:.:.:.:.:.: : : : : : : : : : ё„-^Ї
        .::.:.:.:.:.:.:.:. : : : : : : : ё„„-^Ї
        :.' : : '\ : : : : : : : ;ё„„-~"
        :.:.:: :"-„""***/*'мё'Ї
        :.': : : : :"-„ : : :"\
        .:.:.: : : : :" : : : : \,
        :.: : : : : : : : : : : : 'М
        : : : : : : :, : : : : : :/
        "-„_::::_„-*__„„~"


        Buy cialis online
        Cialis (tadalafil) tablets to treat erectile dysfunction available to buy online in daily 2.5mg or 5mg strengths, and as required 10mg or 20mg strengths.
        How to buy online

        1.Read medical information about erectile dysfunction
        2. Answer medical questions to check for eligibility
        3. Reviewed by doctors - posted from UK pharmacy

        www.doctorfox.co.uk/erectile-dysfunction/cialis.html


        ~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~W-
        Ответить
    • Много букв. Не осилил.
      Ответить
      • ………………………………………._ё„„„„_
        …………………….…………...„--~*'Ї…….'\
        ………….…………………… („-~~--„ё_….,/м'М
        …….…………………….ё„-^"Ї : : : : :ё-Ї"Ї/'
        ……………………ё„„-^"Ї : : : : : : : '\ё„„,-"
        **ЇЇЇ'^^~-„„„----~^*'"Ї : : : : : : : : : :ё-"
        .:.:.:.:.„-^" : : : : : : : : : : : : : : : : :„-"
        :.:.:.:.:.:.:.:.:.:.: : : : : : : : : : ё„-^Ї
        .::.:.:.:.:.:.:.:. : : : : : : : ё„„-^Ї
        :.' : : '\ : : : : : : : ;ё„„-~"
        :.:.:: :"-„""***/*'мё'Ї
        :.': : : : :"-„ : : :"\
        .:.:.: : : : :" : : : : \,
        :.: : : : : : : : : : : : 'М
        : : : : : : :, : : : : : :/
        "-„_::::_„-*__„„~"


        Buy cialis online
        Cialis (tadalafil) tablets to treat erectile dysfunction available to buy online in daily 2.5mg or 5mg strengths, and as required 10mg or 20mg strengths.
        How to buy online

        1.Read medical information about erectile dysfunction
        2. Answer medical questions to check for eligibility
        3. Reviewed by doctors - posted from UK pharmacy

        www.doctorfox.co.uk/erectile-dysfunction/cialis.html


        ~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~R-
        Ответить
    • я сначала растерялся, и не понял что за язык... :(
      Ответить
      • Сосо😅
        Ответить
        • ………………………………………._ё„„„„_
          …………………….…………...„--~*'Ї…….'\
          ………….…………………… („-~~--„ё_….,/м'М
          …….…………………….ё„-^"Ї : : : : :ё-Ї"Ї/'
          ……………………ё„„-^"Ї : : : : : : : '\ё„„,-"
          **ЇЇЇ'^^~-„„„----~^*'"Ї : : : : : : : : : :ё-"
          .:.:.:.:.„-^" : : : : : : : : : : : : : : : : :„-"
          :.:.:.:.:.:.:.:.:.:.: : : : : : : : : : ё„-^Ї
          .::.:.:.:.:.:.:.:. : : : : : : : ё„„-^Ї
          :.' : : '\ : : : : : : : ;ё„„-~"
          :.:.:: :"-„""***/*'мё'Ї
          :.': : : : :"-„ : : :"\
          .:.:.: : : : :" : : : : \,
          :.: : : : : : : : : : : : 'М
          : : : : : : :, : : : : : :/
          "-„_::::_„-*__„„~"


          Buy cialis online
          Cialis (tadalafil) tablets to treat erectile dysfunction available to buy online in daily 2.5mg or 5mg strengths, and as required 10mg or 20mg strengths.
          How to buy online

          1.Read medical information about erectile dysfunction
          2. Answer medical questions to check for eligibility
          3. Reviewed by doctors - posted from UK pharmacy

          www.doctorfox.co.uk/erectile-dysfunction/cialis.html


          ~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~Q-
          Ответить
      • ………………………………………._ё„„„„_
        …………………….…………...„--~*'Ї…….'\
        ………….…………………… („-~~--„ё_….,/м'М
        …….…………………….ё„-^"Ї : : : : :ё-Ї"Ї/'
        ……………………ё„„-^"Ї : : : : : : : '\ё„„,-"
        **ЇЇЇ'^^~-„„„----~^*'"Ї : : : : : : : : : :ё-"
        .:.:.:.:.„-^" : : : : : : : : : : : : : : : : :„-"
        :.:.:.:.:.:.:.:.:.:.: : : : : : : : : : ё„-^Ї
        .::.:.:.:.:.:.:.:. : : : : : : : ё„„-^Ї
        :.' : : '\ : : : : : : : ;ё„„-~"
        :.:.:: :"-„""***/*'мё'Ї
        :.': : : : :"-„ : : :"\
        .:.:.: : : : :" : : : : \,
        :.: : : : : : : : : : : : 'М
        : : : : : : :, : : : : : :/
        "-„_::::_„-*__„„~"


        Buy cialis online
        Cialis (tadalafil) tablets to treat erectile dysfunction available to buy online in daily 2.5mg or 5mg strengths, and as required 10mg or 20mg strengths.
        How to buy online

        1.Read medical information about erectile dysfunction
        2. Answer medical questions to check for eligibility
        3. Reviewed by doctors - posted from UK pharmacy

        www.doctorfox.co.uk/erectile-dysfunction/cialis.html


        ~-~-~-~-~-~-~-~-~-~-~-~-~-~C-
        Ответить

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