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

    −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
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    // https://habr.com/ru/company/jugru/blog/438260/
    
    template<Semiregular T>
    struct maybe_view : view_interface<maybe_view<T>> {
      maybe_view() = default;
      maybe_view(T t) : data_(std::move(t)) {
      }
      T const *begin() const noexcept {
        return data_ ? &*data_ : nullptr;
      }
      T const *end() const noexcept {
        return data_ ? &*data_ + 1 : nullptr;
      }
    private:
      optional<T> data_{};
    };
    inline constexpr auto for_each =
      []<Range R,
         Iterator I = iterator_t<R>,
         IndirectUnaryInvocable<I> Fun>(R&& r, Fun fun)
            requires Range<indirect_result_t<Fun, I>> {
          return std::forward<R>(r)
            | view::transform(std::move(fun))
            | view::join;
      };
    inline constexpr auto yield_if =
      []<Semiregular T>(bool b, T x) {
        return b ? maybe_view{std::move(x)}
                 : maybe_view<T>{};
      };
    
    /*
    > Быть может, что для кого-то это язык родной, но для меня всё
    это ощущается как если бы кто-то решил, что Perl излишне читабельный,
    а Brainfuck — излишне нечитабельный, поэтому давайте целиться между
    ними. Я программировал в основном на C++ все последние 20 лет. Может
    быть, я слишком тупой, чтобы во всём этом разобраться, отлично.
    */

    Какой багор)))

    j123123, 31 Января 2019

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

    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
    // int limit - кол-во записей на странице
    // int current - текущая страница
    // int pages - кол-во страниц
    // int count - общее кол-во записей
    
    if (limit > 0) {
    	pages = count / limit;
    	if (count % limit > 1) {
    		pages++;
    	}
    	if (current != pages) {
    		if (current >= 1 && current <= pages) {
    			current = pages / (current + 1);
    		} else {
    			current = 1;
    		}
    	}
    }

    Феерическая реализация постраничника от джуна

    egen, 31 Января 2019

    Комментарии (12)
  3. Си / Говнокод #25341

    +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
    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
    /*
    * Place the right command in the parameter AY temperature fine adjust
    * Uses number from PPD less 11.
    */
    switch (header->cupsCompression)
    {
    case 1 :
      strcpy(Fadjt,"{AY;-10,");
      break;
    case 2 :
      strcpy(Fadjt,"{AY;-09,");
      break;
    case 3 :
      strcpy(Fadjt,"{AY;-08,");
      break;
    case 4 :
      strcpy(Fadjt,"{AY;-07,");
      break;
    case 5 :
      strcpy(Fadjt,"{AY;-06,");
      break;
    case 6 :
      strcpy(Fadjt,"{AY;-05,");
      break;
    case 7 :
      strcpy(Fadjt,"{AY;-04,");
      break;
    case 8 :
      strcpy(Fadjt,"{AY;-03,");
      break;
    case 9 :
      strcpy(Fadjt,"{AY;-02,");
      break;
    case 10 :
      strcpy(Fadjt,"{AY;-01,");
      break;
    case 11 :
      strcpy(Fadjt,"{AY;+00,");
      break;
    case 12 :
      strcpy(Fadjt,"{AY;+01,");
      break;
    case 13 :
      strcpy(Fadjt,"{AY;+02,");
      break;
    case 14 :
      strcpy(Fadjt,"{AY;+03,");
      break;
    case 15 :
      strcpy(Fadjt,"{AY;+04,");
      break;
    case 16 :
      strcpy(Fadjt,"{AY;+05,");
      break;
    case 17 :
      strcpy(Fadjt,"{AY;+06,");
      break;
    case 18 :
      strcpy(Fadjt,"{AY;+07,");
      break;
    case 19 :
      strcpy(Fadjt,"{AY;+08,");
      break;
    case 20 :
      strcpy(Fadjt,"{AY;+09,");
      break;
    case 21 :
      strcpy(Fadjt,"{AY;+10,");
      break;
    }

    cykablyad, 31 Января 2019

    Комментарии (19)
  4. Куча / Говнокод #25340

    0

    1. 1
    https://i.imgur.com/7uRLULs.mp4

    Аппаратная нейросеть в мозгах петуха совершила ошибку классификации.

    j123123, 30 Января 2019

    Комментарии (47)
  5. JavaScript / Говнокод #25339

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    checkTableFilters () {
        if (this._activeTableFilter && this._filter.filter._filters.get(this._activeTableFilter)) {
          this._filter.filter._filters.get(this._activeTableFilter).Update();
        }
      }

    "Так вышло" - хороший ответ.
    1. this._filter.filter._filters (фильтры фильтра фильтра?..)
    2. Зачем имитировать приватность полей класса соглашением о наименовании, если её игнорируют как могут?..
    3. ... дополните сами

    webviewer, 30 Января 2019

    Комментарии (60)
  6. JavaScript / Говнокод #25338

    +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
    let tableCellHamburgers = Array.prototype.slice.call(document.getElementsByClassName('js-listen__letters-table__hamburger'));
      tableCellHamburgers.forEach((tableCellHamburger) => {
    	let code = Array.prototype.slice.call(tableCellHamburger.classList).filter(elem => elem.indexOf('js-table__cell__hamburger__') === 0)[0].replace('js-table__cell__hamburger__', '');
    	let searchInput = document.querySelector(`.js-table__cell__search-input__${code}`);
    	if (!(searchInput && searchInput.value)) {
    	  tableCellHamburger.style.filter = 'none';
    	}
    	let dropdownContent = document.querySelector(`.js-table__cell__dropdown-content__${code}`);
    	if (dropdownContent) {
    	  dropdownContent.style.display = 'none';
    	}
      });

    Автор этого кода (full-stack программист) собирался выпилить jQuery из проекта, т.к. всю работу с DOM давно можно красиво писать на чистом ES6. К счастью, он уволился, не осуществив свой замысел.

    webviewer, 30 Января 2019

    Комментарии (24)
  7. PHP / Говнокод #25337

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    <?$props = "";
    if(!empty($arResult["PROPERTIES"]["ARTNUMBER"]["VALUE"])):
    	$props[] = array(
    		"NAME" => $arResult["PROPERTIES"]["ARTNUMBER"]["NAME"],
    		"CODE" => $arResult["PROPERTIES"]["ARTNUMBER"]["CODE"],
    		"VALUE" => $arResult["PROPERTIES"]["ARTNUMBER"]["VALUE"]
    	);
    	$props = strtr(base64_encode(addslashes(gzcompress(serialize($props),9))), '+/=', '-_,');?>
    	<input type="hidden" name="PROPS" value="<?=$props?>" />
    <?endif;?>

    tee, 29 Января 2019

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

    +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
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    ВЫБРАТЬ
    КОЛИЧЕСТВО ( РАЗЛИЧНЫЕ УвольнениеИзОрганизации.Сотрудник) КАК Сотрудник
    Кадровая история сотрудников спецслужб их.Подразделение,
    ЕСТЬNULL (КОЛИЧЕСТВО ( РАЗЛИЧНЫЕ ВЫБОР
    КОГДА УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование = "" По собой желанию, на учебу пункт 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию, по уходу за инвалидном п.3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование = "" По соб желанию, ребёнок-инвалид до 18 л., А 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию , с переменой м. ж.,  пункт 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию, по уходу за ребенком до 14 лет, п 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию , на пенсию, п 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" по соб желанию, п.3 статьи 77 ТК РФ""
    ТОГДА УвольнениеИзОрганизаций.Сотрудник
    КОНЕЦ ), 0) КАК увПоСобств,
     ЕСТЬNULL (ВЫБОР
     
    КОГДА УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" За прогулы, подпункт """" а"""" пункта 6 статьи 81 ТК РФ""
    ТОГДА УвольнениеИзОрганизаций.Сотрудник
    КОНЕЦ ,0) КАК УвПрогул,
    ЕСТЬNULL ( КОЛИЧЕСТВО ( РАЗЛИЧНЫЕ УвольнениеИзОрганизации.Сотрудник
    ),0) Как УвВсего
    ИЗ Документ.Увольнение.Сотрудник КАК УвольнениеИзОрганизации
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КадроваяИсторияСотрудников.СрезПоследних как КадроваяИсторияСотрудниковСрезПоследних
    ПО Сотрудник КАК УвольнениеИзОрганизации.Сотрудник = КадроваяИсторияСотрудниковСрезПоследних.Сотрудник 
    ГДЕ 
    УвольнениеИзОрганизации.Ссылка.Организации в ИЕРАРХИИ (& Организация)
    И УвольнениеИзОрганизации.ДатаУвольнения >=& НачалоГода
     И (УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию, по уходу за инвалидном п.3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование = "" По соб желанию, ребёнок-инвалид до 18 л., А 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию , с переменой м. ж.,  пункт 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию, по уходу за ребенком до 14 лет, п 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" По соб желанию , на пенсию, п 3 статьи 77 ТК РФ""
    ИЛИ УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" по соб желанию, п.3 статьи 77 ТК РФ""
    ИЛИ  УвольнениеИзОрганизаций.СтатьяТКРФ.Наименование ="" За прогулы, подпункт """" а"""" пункта 6 статьи 81 ТК РФ""
    ) 
    СГРУППИРОВАТЬ ПО
    КадроваяИсторияСотрудниковСрезПоследних.Подразлеление
    ЕСТЬNULL (ВЫБОР 
    КОГДА Увольнение Зоран зайти.СтатьяТКРФ.Наименование = "" За прогулы, подпункт """" а"""" пункта 6 статьи 81 ТК РФ""
    ТОГДА УвольнениеИзОрганизации.Сотрудник 
    КОНЕЦ ,0);

    Зачем ему конфигуратор? Он и так может отчеты выводить в табДок через блокнот)))
    Ссылка на источник ТУТ - http://www.cyberforum.ru/1c/thread2394049.html

    dethmontt, 29 Января 2019

    Комментарии (137)
  9. Pascal / Говнокод #25335

    −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
    Program Aliski; 
    uses Graphabc; 
    begin 
    SetWindowWidth(800); 
    SetWindowHeight(600); 
    SetPenWidth(3); 
    SetFontSize(18); 
    SetFontColor(clGreen); 
    rectangle(85,80,500,140); 
    TextOut(100,100,'Алексей у тебя реально 10см?'); 
    Circle(350,500, 40); 
    Circle(430,500, 40); 
    FloodFill(350,500,clSkyBlue); 
    FloodFill(430,500,clPurple); 
    Line(350,460,350,250); 
    Line(430,460,430,250); 
    Line(340,250,440,250); 
    Line(390,220,390,200); 
    Arc(390,250,50,0,180); 
    end.

    Ученик решил поприкалываться над товарищем на уроке

    vodandr, 28 Января 2019

    Комментарии (58)
  10. Си / Говнокод #25334

    +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
    void add_SSE(uint8_t a[static 7], uint8_t b[static 7], uint8_t out[static 7])
    {
      uint64_t a_64 = 0;
      uint64_t b_64 = 0;
      for (size_t i = 0; i < 7; i++) // можно наанроллить
      {
        a_64 |= (uint64_t)a[i] << (i*9);
        b_64 |= (uint64_t)b[i] << (i*9);
      }
      
      uint64_t c_64 = a_64 + b_64;
      
      for (size_t i = 0; i < 7; i++) // можно наанроллить
      {
        out[i] = (uint64_t)c_64 >> (i*9);
      }
    }

    SSE

    j123123, 28 Января 2019

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