1. Лучший говнокод

    В номинации:
    За время:
  2. SQL / Говнокод #18394

    −163

    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
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    SET DELETED ON
    store 0 to r_klot,r_kpot,r_vspot,r_klgv,r_kpgv,r_vspgv,r_klvod,r_kpvod,r_vspvod,r_klngv,r_kpngv,r_vspngv
    store 0 to r_klkan,r_kpkan,r_sumkan,r_klmys,r_kpmys,r_summys,r_klmys1,r_kpmys1,r_summys1,r_vspmys,r_vspkan,r_vspmys1
    STORE 0 TO r_klmys2,r_kpmys2,r_summys2,r_vspmys2
    STORE 0 TO r_klmys3,r_kpmys3,r_summys3,r_vspmys3
    STORE 0 TO r_klmys4,r_kpmys4,r_summys4,r_vspmys4
    STORE 0 TO r_klmys5,r_kpmys5,r_summys5,r_vspmys5
    SELECT 2
    USE tarif INDEX tarif SHARED
    SELECT 1
    use kw SHARED
    SET RELATION TO kodtar INTO tarif
    go top
    do while .not. eof()
    if kw.ot=0
    r_klot=r_klot+1
    r_kpot=r_kpot+kp
    r_vspot=r_vspot+vsp
    endif
    if kw.gv#0 .or. prgvod=0
    r_klgv=r_klgv+1
    r_kpgv=r_kpgv+kp
    r_vspgv=r_vspgv+vsp
    endif
    if kw.vod#0 .or. prv=0
    r_klvod=r_klvod+1
    r_kpvod=r_kpvod+kp
    r_vspvod=r_vspvod+vsp
    endif
    IF tarif.tgv#0
    r_klngv=r_klngv+1
    r_kpngv=r_kpngv+kp
    r_vspngv=r_vspngv+vsp
    ENDIF
    IF kw.kan#0
    r_klkan=r_klkan+1
    r_kpkan=r_kpkan+kp
    r_sumkan=r_sumkan+kan
    r_vspkan=r_vspkan+vsp
    ENDIF
    IF kw.mys#0
    r_klmys=r_klmys+1
    r_kpmys=r_kpmys+kp
    r_summys=r_summys+mys
    r_vspmys=r_vspmys+vsp
    ENDIF
    *газ.плита 2-х комфорочная
    IF kw.gpp=1
    r_klmys1=r_klmys1+1
    r_kpmys1=r_kpmys1+kp
    r_summys1=r_summys1+gps
    r_vspmys1=r_vspmys1+vsp
    ENDIF
    *газ.плита 4-х комфорочная
    IF kw.gpp=2
    r_klmys2=r_klmys2+1
    r_kpmys2=r_kpmys2+kp
    r_summys2=r_summys2+gps
    r_vspmys2=r_vspmys2+vsp
    ENDIF
    *нагреватель проточный (обычная колонка)
    IF kw.gkp=1
    r_klmys3=r_klmys3+1
    r_kpmys3=r_kpmys3+kp
    r_summys3=r_summys3+gks
    r_vspmys3=r_vspmys3+vsp
    ENDIF
    *нагреватель емкостной, газовый (титан)
    IF kw.gkp=2
    r_klmys4=r_klmys4+1
    r_kpmys4=r_kpmys4+kp
    r_summys4=r_summys4+gks
    r_vspmys4=r_vspmys4+vsp
    ENDIF
    *водоотведение
    IF kw.yb#0
    r_klmys5=r_klmys5+1
    r_kpmys5=r_kpmys5+kp
    r_summys5=r_summys5+yb
    r_vspmys5=r_vspmys5+vsp
    ENDIF
    skip
    enddo
    REPORT FORM spr1r TO PRINTER prompt PREVIEW 
    ---
    set date british
      select 2
     use sprstr index sprstr SHARED 
    SET ORDER TO TAG KST OF SPRSTR.CDX
    SELE 3
     USE TARIF INDEX TARIF SHARED
      select 1
     use kw index kw1 SHARED 
    
     set relation to kst into b,kodtar INTO c
    SET FILTER TO ls=r_ls  
    sdr=DTOC(thisform.text1.Value)
    REPORT FORM subsid PREVIEW

    Вот такой пиздец мне надо сопровождать и дописывать. Судя по говённости кода, по уёбскому названию переменных, по дико ебланской манере писать код - аффтар из Дульфистов, только у них может получиться настолько уёбский код.

    DelphiGovno, 24 Июня 2015

    Комментарии (285)
  3. Куча / Говнокод #25999

    +2

    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
    https://habr.com/ru/post/472970/
    
    Критика протокола и оргподходов Telegram. Часть 1, техническая: опыт написания клиента с нуля
    
    в Full самая наркомания, с точки зрения сетевика: длина,
    sequence number, причем НЕ ТОТ, что в основном MTProto,
    тело, CRC32. Да, всё это поверх TCP. Который предоставляет
    нам надежный транспорт в виде последовательного потока байт,
    никакие последовательности не нужны, тем более контрольные
    суммы. Окей, мне сейчас возразят, что в TCP 16-битная
    контрольная сумма, так что искажение данных случается.
    Отлично, только у нас вообще-то криптографический протокол
    с хэшами длиннее 16 байт, все эти ошибки — и даже
    более — будут отловлены на несовпадении SHA уровнем выше.
    Никакого смысла в CRC32 поверх этого — НЕТ.

    Ебать дебилы

    j123123, 27 Октября 2019

    Комментарии (284)
  4. PHP / Говнокод #20014

    0

    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
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    function loadQuestionsInTest() {
      $mysqli = connectDB();
      $testID = $_POST['testID'];
      $testSets = $mysqli -> query('select * from testsets where test_id = '.$testID.';');
      if ($testSets->num_rows > 0) {
        $query = [];
        while ($row = $testSets -> fetch_assoc()) {
          $loID = $row['lo_id'];
          $questionsCount = $row['count'];
          $questionsInLO = $mysqli -> query('select count(*) as num from questions where lo_id = '.$loID.';') -> fetch_assoc()['num'];
          if ($questionsCount > $questionsInLO)
            $questionsCount = $questionsInLO;
          $query[] = '(select id, content, result, lo_id from questions where lo_id = '.$loID.' order by rand() limit '.$questionsCount.')';
        }
        $query = implode(' union ', $query).' order by rand();';
        
        $questionRes = $mysqli -> query($query);
        $questions = array();
        while ($row = $questionRes->fetch_assoc()) {
          $questionType = json_decode($row['result']) -> type;
          if ($questionType == 'check') {
            $question = array(
              'id' => $row['id'],
              'content' => $row['content'],
              'loID' => $row['lo_id']
            );
            array_push($questions, $question);
          } else if ($questionType == 'input') {
            $questionContent = json_decode($row['result']);
            $questionText = $questionContent -> text;
            $answers = $questionContent -> answers;
            for ($i = count($answers) -1; $i >= 0; $i--)
              $questionText = mb_substr_replace($questionText, '(|answer'.$answers[$i] -> id.'|)', $answers[$i] -> posStart, $answers[$i] -> posEnd - $answers[$i] -> posStart);
            $content = array( 'type' => 'input', 'text' => $questionText );
            $question = array(
              'id' => $row['id'],
              'content' => json_encode($content, JSON_UNESCAPED_UNICODE),
              'loID' => $row['lo_id']
            );
            array_push($questions, $question);
          }
        }
        $response = json_encode($questions, JSON_UNESCAPED_UNICODE);
        echo $response;
        $mysqli -> close();
        return;
      }
      echo '[]';
      $mysqli -> close();
    }

    Моя дипломная работа по теме "тестирование студентов". Загрузка вопросов для прохождения теста из базы. Вопросы должны идти в рандомном порядке, варианты ответов тоже.

    cotheq, 16 Мая 2016

    Комментарии (284)
  5. Python / Говнокод #18096

    −118

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    def get_a():
        print("Hello goblin")
        return get_a
    
    get_a()()()()()()()()()()()()()

    Осталось понять зачем

    greenx, 30 Апреля 2015

    Комментарии (284)
  6. C++ / Говнокод #14301

    +34

    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
    class cxx_query {
        elements operator()(const std::string &css_query);
        void operator()(std::function<void()> callback);
        http_request get(const std::string &url);
        // ...
    } $;
    
    #define function []
    
    $(function() {
        $.get(some_url, function(const std::string &data) {
            $("#result").html(data);
        });
    });

    bormand, 30 Декабря 2013

    Комментарии (284)
  7. Assembler / Говнокод #2172

    +240.1

    1. 1
    2. 2
    fld qword ptr [d]
    call @ROUND

    Это творчество дельфийского компилятора на тему i := round(d);
    Он делает вызов функции ради одной пустяковой команды, что очень влияет на скорость.

    TarasB, 24 Ноября 2009

    Комментарии (283)
  8. C++ / Говнокод #27454

    +1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    #include <iostream>
    using namespace std;
    
    int main() {
    	const char *kakoiBagor = R""""(
    "Какой
    багор )))"
    )"""";
    	cout << kakoiBagor << endl;
    	return 0;
    }

    А вы знали, что в C++ есть ХЕРЕДОК?

    https://ideone.com/5KdJJQ

    3_dar, 04 Июня 2021

    Комментарии (281)
  9. Java / Говнокод #26712

    +1

    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
    18. 18
    19. 19
    20. 20
    21. 21
    class Values<T> {
       T data;
       Values() {}
       Values(T data) {this.setData(data);}
       public void setData(T data) {this.data = data;}
       public T getData() {return this.data;}
    }
    
    public class Main {
       public static void main(String[] args) {
          Values[][] item = new Values[3][2];
          item[0][0] = new Values("grapes");
          item[0][1] = new Values(1);
    
          item[1][0] = new Values("apples");
          item[1][1] = new Values(1);
    
          item[2][0] = new Values("peaches");
          item[2][1] = new Values(1);
       }
    }

    >>> кто меня интервьюировал на позицию Staff Engineer? Junior?
    >>>

    1. Если покупатель купит больше одного яблока,
    то он получит скидку 20% на все яблоки в корзине;
    2. Если покупатель купит пакет винограда, то второй пакет
    он получит бесплатно.

    Итог: посчитать стоимость корзины покупателя при выходе из магазина,
    при то, что данные даны в следующем виде:
    [["grapes", 1],["apples", 0],["peaches", 1]] => 12
    [["grapes", 1],["apples", 1],["peaches", 1]] => 15 ...

    https://habr.com/post/504638

    Бля-я-я-я, это просто феерия! 1024--, зацени статью, ты оценишь!

    gost, 31 Мая 2020

    Комментарии (281)
  10. VisualBasic / Говнокод #28567

    −3

    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
    Public Function DescendingSort(ByRef Data As Variant) As Variant
        Dim i As Long
        For i = LBound(Data) To UBound(Data) - 1
            Dim j As Long
            For j = i + 1 To UBound(Data)
                If Data(i) < Data(j) Then
                    Dim Temp As Variant
                    Temp = Data(j)
                    Data(j) = Data(i)
                    Data(i) = Temp
                End If
            Next
        Next
    
        DescendingSort = Data
    End Function

    Вот все спрашивают, зачем на собеседованиях требуют сортировки писать — так вот для этого! Вдруг вам придётся писать на «VBA»?
    > Как в VBA правильно создавать одномерный массив. ArrayList
    https://habr.com/ru/post/712000/

    ISO, 23 Января 2023

    Комментарии (280)
  11. Java / Говнокод #26836

    +1

    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
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    package com.company;
    
    public class Main {
    
        public static void main(String[] args) {
            int answer = 0;
    
            for (int i = 100; i < 1000; i++){
                for (int j = 100; j < 1000; j++){
                    int result = i * j;
    
                    String str = String.valueOf(result); //convert
                    String revers = new StringBuffer(str).reverse().toString(); //revers
                    int newb = Integer.parseInt(revers); //convert
    
                    if (newb == result){
                        int answer001 = result;
    
    
                        if (answer001 > answer) answer = answer001;
                    }
    
                }
            }
            System.out.println(answer);
    
        }
    
    }

    реализация четвёртой задачки из проекта эйлера

    warzon131, 01 Августа 2020

    Комментарии (279)