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

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

    +4

    1. 1
    2. 2
    Yandere Simulator
    https://f0ck.me/b/09d3f680.mp4

    j123123, 22 Января 2019

    Комментарии (14)
  3. 1C / Говнокод #25301

    +4

    1. 1
    2. 2
    3. 3
    Если ЭтаФорма.ВладелецФормы.ВладелецФормы.Объект.Заголовок = "Согласование контрагента " Или ЭтаФорма.ВладелецФормы.ВладелецФормы.Объект.Заголовок = "" Тогда
                 ЭтаФорма.ВладелецФормы.ВладелецФормы.Объект.Заголовок = "Согласование контрагента " + КонтрагентДО;
    КонецЕсли;

    Просто оставлю это здесь.
    Когда ж вы все передохните любители ВладельцевФормы через ВладельцаФормы.

    MaxBS, 11 Января 2019

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

    +4

    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
    #include <stdio.h>
    #include <string>
    
    const struct FooAgeProperty {} age;
    const struct FooNameProperty {} name;
    
    template <typename T>
    struct FooPropertyAssignment {
    	FooPropertyAssignment(T* prop): prop(prop) { }
    
    	T* prop;
    };
    
    struct years {
    	int i;
    
    	years& operator=(FooPropertyAssignment<int> fpa) {
    		*fpa.prop = i;
    		return *this;
    	}
    };
    
    struct nam {
    	std::string s;
    
    	nam& operator=(FooPropertyAssignment<std::string> fpa) {
    		*fpa.prop = s;
    		return *this;
    	}
    };
    
    years operator""years(unsigned long long value) {
    	return { (int)value };
    }
    
    nam operator""_(const char* value, size_t) {
    	return { value };
    }
    
    struct NegativeFoo {
    	NegativeFoo(int* age, std::string* name): age(age), name(name) {}
    
    	int* age;
    	std::string* name;
    };
    
    FooPropertyAssignment<int> operator<(FooAgeProperty fap, NegativeFoo nfoo) {
    	return FooPropertyAssignment<int>(nfoo.age);
    }
    
    FooPropertyAssignment<std::string> operator<(FooNameProperty fnp, NegativeFoo nfoo) {
    	return FooPropertyAssignment<std::string>(nfoo.name);
    }
    
    struct Foo;
    Foo* nasty_global_variable;
    
    struct Foo {
    	Foo() {
    		nasty_global_variable = this;
    	}
    
    	NegativeFoo operator-() {
    		return NegativeFoo(&age, &name);
    	}
    
    	int age;
    	std::string name;
    };
    
    struct to_string {
    	struct foo {
    		foo(int (*)(const char*, ...)) {
    			printf(".old years %d am I and %s is name My\n", nasty_global_variable->age, nasty_global_variable->name.c_str());
    		}
    	};
    };
    
    int main() {
    	Foo foo;
    	5years = age<-foo;
    	"Billy"_ = name<-foo;
    	(to_string::foo)printf;
    }

    https://www.reddit.com/r/ProgrammerHumor/comments/acv2og/just_wrote_my_first_program_in_c/

    Nyamka, 06 Января 2019

    Комментарии (4)
  5. C++ / Говнокод #25319

    +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
    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
    // https://www.tutorialspoint.com/Read-a-character-from-standard-input-without-waiting-for-a-newline-in-Cplusplus
    
    
    
    // A portable solution doesn't exist for doing this. On windows, you can use the getch() function from the conio(Console I/O) library to get characters pressed. For example,
    
    #include<iostream>
    #include<conio.h>
    using namespace std;
    int main() {
        char c;
        while(1){ // infinite loop
            c = getch();
            cout << c;
        }
    }
    
    // This will output whatever character you input to the terminal. Note that this will only work on windows as the conio library exists only on windows. On UNIX, you can achieve this by entering in system raw mode. For example,
    
    #include<iostream>
    #include<stdio.h>
    int main() {
        char c;
       // Set the terminal to raw mode
        system("stty raw");
        while(1) {
            c = getchar(); 
            // terminate when "." is pressed
            if(c == '.') {
                system("stty cooked");
                exit(0);
            }  
            std::cout << c << " was pressed."<< std::endl;
        }
    }

    Вариант под UNIX еще и очень секурный, ЕВПОЧЯ

    j123123, 22 Января 2019

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

    +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
    private static byte shitleft(byte shiftbyte, int shiftno)
    {
        string newbyte2 = Convert.ToString(shiftbyte, 2);
        newbyte2 = newbyte2.PadLeft(8, '0');
    
        string newbyte = "";
        if (shiftno == 0) return shiftbyte;
        else if (shiftno > 7) return 0;
    
        for (int bytecount = 0 + shiftno; bytecount < shiftno + 8; bytecount++)
        {
            if (bytecount > 7) newbyte += newbyte2[bytecount - 8].ToString();
            else newbyte += newbyte2[bytecount].ToString();
        }
        return Convert.ToByte(newbyte, 2);
    }

    Циклический сдвиг. Тоже самое без проверок: (byte)((shiftbyte << shiftno) | (shiftbyte >> (8 - shiftno)))

    Nyamka, 13 Января 2019

    Комментарии (11)
  7. JavaScript / Говнокод #25317

    +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
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    (function(_){
    _.mixin({makeCarouselWidget: function (container, el, width, height, tmpl) {
        var list_of_rows = _(container).groupBy(function(e, index){
            return Math.floor(index / (width * height));
        });                                             // transform collection to list by 'num_of_cols' chunks
        _(list_of_rows).each(function(row){
            var list_of_chunks = _(row).groupBy(function(e, index){
                return Math.floor(index/width);
            });
            var li = $('<li>').appendTo(el);
            _.each(list_of_chunks, function(chunk){
                var r = $('<div>').attr('class','row fooitem')
                    .attr('style', "margin-right:50px;").appendTo(li);
                _.each(chunk, function(item){
                    r.append(
                        tmpl.render(item)
                    );
                });
            })
        });                                             // each list_of_rows
    }});
    })(_);

    Я хочу быть кочегаром, кочегаром, кочегаром.
    Работать сутки-через-трое, через-трое, через-трое...

    gueest8, 20 Января 2019

    Комментарии (20)
  8. Python / Говнокод #25316

    +2

    1. 1
    print(__import__('pickle').loads(b'c__builtin__\ngetattr\n(c__builtin__\nlist\n(c__builtin__\nmap\n(c__builtin__\neval\n(S\'(lambda x:(lambda y:[x.__setitem__(0,(x[0]+2)**0.5),x.__setitem__(1,x[1]*x[0]/2),2/x[1]][2]))\'\ntR((I0\nI1\nltRc__builtin__\nxrange\n(I27\ntRtRtRS\'__getitem__\'\ntR(I-1\ntR.'))

    https://wandbox.org/permlink/sdhWOEIBVq3iiDgF

    j1392184, 18 Января 2019

    Комментарии (12)
  9. JavaScript / Говнокод #25302

    +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
    ...
    removed: function(row) {
    
        if ($(row).find('textarea')[0].style.backgroundColor === "red") {
            $(row).find('textarea')[0].style.backgroundColor = "white";
            --disabled_elements_count;
        }
    
        if (disabled_elements_count === 0) {
            $("input[type='submit']").prop('disabled', false);
        }
    }, ...

    eternalfame, 11 Января 2019

    Комментарии (3)
  10. 1C / Говнокод #25300

    +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
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    Функция ИдентификаторЦепочки(Ссылка) Экспорт
    	
    	Результат = Документы.ЭтапПроизводства2_2.ПустаяСсылка();
    	
    	Запрос = Новый Запрос(
    	"ВЫБРАТЬ
    	|	Таблица.ИдентификаторЦепочки КАК ИдентификаторЦепочки
    	|ИЗ
    	|	Документ.ЭтапПроизводства2_2 КАК Таблица
    	|ГДЕ
    	|	Таблица.Ссылка = &Ссылка");
    	Запрос.УстановитьПараметр("Ссылка", Ссылка);
    	
    	Выборка = Запрос.Выполнить().Выбрать();
    	
    	Если Выборка.Следующий() Тогда
    		
    		Результат = Выборка.ИдентификаторЦепочки;
    		
    	КонецЕсли;
    	
    	Возврат Результат;
    	
    КонецФункции

    Функция из типовой, возвращает реквизит документа через жопу. Можно заменить на
    возврат ?(ЗначениеЗаполнено(Ссылка.Идентификатор Цепочки), Ссылка.ИдентификаторЦепочки, Документы.ЭтапПроизводства2_2.ПустаяСсыл ка()).
    А можно вообще нихуя не делать, потому что если реквизит не заполнен, там и так пустая ссылка.
    Нахуй так жить

    acula98, 11 Января 2019

    Комментарии (5)
  11. PHP / Говнокод #25293

    +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
    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
    <?php
    
    $b = array(
      0x0000 => 1095,
      0x5b9d => 1797,
      0x5fa9 => 516,
      0x6273 => 1677,
      0x6572 => 807,
      0x7fb9 => 1143,
      0x7fff => 2598,
    );
    
    foreach(preg_split('#(.{28})#', '123o770n100b234r570m701a888d799l220m966v460 439y833o982e', -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY) as $kiss) {
      $kiss = preg_split('#(\d+.)#', $kiss, -1, PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);
      $bits = (intval($kiss[0] <= $kiss[1])     ) | (intval($kiss[1] <= $kiss[2]) << 1) | (intval($kiss[2] <= $kiss[3]) << 2) | (intval($kiss[3] <= $kiss[4]) << 3) | (intval($kiss[4] <= $kiss[5]) << 4)
              | (intval($kiss[0] <= $kiss[2]) << 5) | (intval($kiss[1] <= $kiss[3]) << 6) | (intval($kiss[2] <= $kiss[4]) << 7) | (intval($kiss[3] <= $kiss[5]) << 8)
              | (intval($kiss[0] <= $kiss[3]) << 9) | (intval($kiss[1] <= $kiss[4]) <<10) | (intval($kiss[2] <= $kiss[5]) <<11) 
              | (intval($kiss[0] <= $kiss[4]) <<12) | (intval($kiss[1] <= $kiss[5]) <<13)
              | (intval($kiss[0] <= $kiss[5]) <<14);
      $mask = gmp_init('539414e0a5380d4e02ab811ae054b81566055c2157014ec0531294c435310aac429d10a62c29832a60c558313a0c4c531306c4c152b054741518a5460d5182ac611b1a06b8852d414b4252d0b0b4298d0a5c42b31074c419b106654198a866215c283b0a0e528386a0e1543850ae222b881ad406b421ad032b444aca11d28466a119544650b194256429591152c454871522354889d2147484e5213b084e9813a4455912a6458991546454e11533054c895a30568ca1a32b08cad03634458d1a22668519a138684cca133604cd11176045d88175405d42175031d44475181d4631518e8463a8172a21ca8b12a2e0a8b9422e540bb110ec458b1174446b111a1c4688d1b0354c0d58435290d4343508ad421d5086ac05aa216a831aa0b8a82d4a0b560654a195056540e95033540cab0346c615318561614a5850d6142e850b1542c2b190ac60a', 16);
      $mask >>= $b[$bits];
      $i5 = gmp_intval(gmp_mod($mask,8));
      $mask >>= 3;
      $i4 = gmp_intval(gmp_mod($mask,8));
      $mask >>= 3;
      $i3 = gmp_intval(gmp_mod($mask,8));
      $mask >>= 3;
      $i2 = gmp_intval(gmp_mod($mask,8));
      $mask >>= 3;
      $i1 = gmp_intval(gmp_mod($mask,8));
      $mask >>= 3;
      $i0 = gmp_intval(gmp_mod($mask,8));
      $kiss = array($kiss[$i0], $kiss[$i1], $kiss[$i2], $kiss[$i3], $kiss[$i4], $kiss[$i5], $kiss[6]);
      print(preg_replace('#\d+#', '', implode($kiss)) . "\n");
    }

    Новогодней петух падал идею http://govnokod.ru/24496#comment450906
    к стати $b можно было оприделить снаруже от sort6 для быстроты

    HACTEHbKA, 07 Января 2019

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