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

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

    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
    (defparameter *workers* 200)
    
    (defun rn-virt-dfns (data &optional (turn-on t))
      (defconstant +workers+ *workers*)
      `(declare (type (array (member ,(let* ((i '())) (do* ((y 0 (+ y 1))) ((= y 9) 'nil) (push y i)))) (3)) data))
      (sb-alien:define-alien-type address-pointer (sb-alien:system-area-pointer))
      (progn (macrolet ((>> (x s) `,(ash x s)) (<< (x -s) `(ash ,x ,(- -s))) (~ (x) `(lognot ,x)) (& (x) `(sb-kernel:get-lisp-obj-address ,x)))
        (let ((truedata (eval `(mapcar #'(lambda (x) (coerce x 'list)) (coerce ,data 'list)))))
          (labels ((get-pointer (addr)
                     (sb-sys:sap-ref-8 (sb-sys:int-sap addr) 0))
                   (proc-dfns-simd (pntrx mmr pntry orgdt)
                     (declare (type integer pntrx pntry)
                              (type (array integer (*)))
                              (type list orgdt))
                     (loop for it in `(,@orgdt)
                           do (let ((dif (the integer (- pntry `,(& it)))))
                                (when (= `,(abs dif) (+ #XA #X1))
                                  (do ((it 0 (+ it (if `(plusp ,dif) 1 -1)))) ((= it (if `(plusp ,dif) 16 -16)) nil)
                                    (ignore-errors
                                      (let ((lazy `(setf (& (get-pointer (- ,dif ,it))) #b0))
                                            (lazy-2 `(setf (~ (& (get-pointer (- ,dif ,it))) #b1))))
                                        (when turn-on (eval lazy) (eval lazy-2))))))
                                (when (/= (abs dif) 8)
                                  (if `(plusp ,dif)
                                    (dotimes (i 8)
                                      (ignore-errors
                                        (let ((lazy `(setf (>> (& (get-pointer (- ,dif ,i))) #x1) #b1)))
                                          (when turn-on (eval lazy)))))
                                    (loop for i from 0 downto -8 by 1
                                          do (ignore-errors
                                               (let ((lazy `(setf (<< (& (get-pointer (- ,dif ,i))) #x1) #b1)))
                                                  (when turn-on (eval lazy)))))))))))
    
            (handler-case
                (loop repeat +workers+ do (bt:make-thread #'(lambda () (proc-dfns-simd `,(& data) `,data `,(& truedata) `,truedata))))
              (error (e)
                (declare (ignore e)))))))))
    
    
    (rn-virt-dfns #(#(1) #(2)))

    lisp-worst-code, 08 Июня 2025

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

    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
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    int main(int argc, char **argv) {
    	size_t buflen;
    	size_t i;
    	char *obuffer;
    	if (argc != 2) {
    		fprintf(stderr, "Usage: %s 'some ASCII string'\n", argv[0]);
    		fprintf(stderr, "\tconvert the string into overlong UTF-8.\n");
    		return 1;
    	}
    	buflen = strlen(argv[1])*2+1;
    	obuffer = malloc(buflen);
    	if (obuffer == NULL) {
    		fprintf(stderr, "Error: cannot allocate %zd bytes of memory.", buflen);
    		return 2;
    	}
    	for (i=0; argv[1][i]; i++) {
    		obuffer[2*i]   = 0xC0|(argv[1][i]>>6);
    		obuffer[2*i+1] = 0x80|(argv[1][i]&0x3F);
    	}
    	obuffer[2*i] = '\0';
    	puts(obuffer);
    	free(obuffer);
    	return 0;
    }

    В UTF-8 запрещено использовать кодовые последовательности не минимальной длины, например юникоды с номером до 127 требуется кодировать именно в один байт, а не в 2,3 и так далее. А если так всё-таки сделать, полученная фигня называется оверлонгом (overlong). Вот этот код их как раз и создаёт. Но только из ASCII символов и расширяя их только до двух байт. Написание более универсального варианта, если вдруг кому-то надо оставляем как упражнение для читателя.

    Что интересно, некоторые текстовые редакторы, если в них открыть файл, сделанный этой программой, увидят обычный текст.

    Threadwalker, 03 Февраля 2025

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

    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
    Запрос = Новый Запрос;
    	Запрос.Текст = 
    		"ВЫБРАТЬ
    		|	КадроваяИсторияСотрудниковСрезПоследних.Должность КАК Должность,
    		|	КадроваяИсторияСотрудниковСрезПоследних.Подразделение КАК Подразделение,
    		|	ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних.Значение КАК Значение
    		|ИЗ
    		|	РегистрСведений.КадроваяИсторияСотрудников.СрезПоследних(, Период <= &ДатаРег) КАК КадроваяИсторияСотрудниковСрезПоследних,
    		|	РегистрСведений.ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудников.СрезПоследних(, Период <= &ДатаРег) КАК ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних
    		|ГДЕ
    		|	КадроваяИсторияСотрудниковСрезПоследних.Сотрудник = &Сотрудник
    		|	И ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних.Показатель = &Показатель
    		|	И ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСрезПоследних.Сотрудник = &Сотрудник";
    	
    	Запрос.УстановитьПараметр("ДатаРег", Объект.ДатаОперации);
    	Запрос.УстановитьПараметр("Сотрудник", Сотрудник);
    	Запрос.УстановитьПараметр("Показатель", Справочники.ПоказателиРасчетаЗарплаты.НайтиПоНаименованию("Тарифная ставка (часовая)"));
    	РезультатЗапроса = Запрос.Выполнить();

    Довелось допиливать за студентом со стажем 1 год.
    Всякое видел, но к таким извращениям не был готов... особенно условию с периодом
    Уже молчу про предопределенный показатель и отсутствие связей

    ilyatim23, 30 Сентября 2024

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

    −1

    1. 1
    form = _this.parentElement.parentElement.parentElement.parentElement.parentElement.parentElement;

    https://github.com/interesnij/new_burials/commit/0d04adfe064c3a36d377548e44114fec4e8a585b ?diff=unified&w=0#diff-e549478298ec34990a6a4e60de6993615daa3b76 120c6333aa756e19a942c45cR318

    Ему не хватило пяти, решил шестой раз добавить.

    truestriker, 27 Августа 2024

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    n = int(input())
    m = int(input())
    if m > 1:
        chast1 = n * 2
        vsegoch = chast1 * (m + 1) 
        print(vsegoch)
    else:
        print(n * 2)

    bobrrrrrr00mailru, 27 Октября 2023

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

    +1

    1. 1
    https://pastebin.com/MarcPuJc

    говно для подтирания важных комментов в вк. Весь не поместился, прилегаю ссылку.

    AnimeGovno, 26 Марта 2023

    Комментарии (5)
  8. Куча / Говнокод #28646

    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
    <script type="text/javascript">
    	var reformalOptions = {
    		project_id: 9409,
    		show_tab: false,
    		project_host: "govnokod.reformal.ru"
    	};
    
    	(function() {
    		var script = document.createElement('script');
    		script.type = 'text/javascript'; script.async = true;
    		script.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'media.reformal.ru/widgets/v3/reformal.js';
    		document.getElementsByTagName('head')[0].appendChild(script);
    	})();
    </script>
    --------------------------------------------------------------------------------
    Request:
    
    GET http://media.reformal.ru/widgets/v3/reformal.js
    Referer: http://govnokod.ru/
    --------------------------------------------------------------------------------
    Response:
    
    307 Temporary Redirect
    Location: http://r.rrzb.ru/?reg=11&orig=http%3A%2F%2Fmedia.reformal.ru%2Fwidgets%2Fv3%2Freformal.js
    --------------------------------------------------------------------------------

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

    Смотрят, значит, они на http страничку, или просто ловят запросы js по http, видят подключаемый javascript и вуаля - подменяют заголовок ответа на 307 Location с новым скриптом со своим содержимым.

    Можете сами посмотреть, если у кого такой вот провайдер, например.
    На этом сайте, по http://govnokod.ru, так и происходит.

    Как с этим бороться?

    Например добавлением атрибута "integrity":
    <script src="http://media.reformal.ru/widgets/v3/reformal.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4 YfRvH+8abtTE1Pi6jizo"></script>

    Но у этого способа, сами понимаете, существуют определённые сложности.

    Второй способ - это добавить к адресу любой get параметр:
    <script src="http://media.reformal.ru/widgets/v3/reformal.js?rand=random"></script>

    Конечно, это вообще не спасёт от подмены через 307 Location, но провайдер по своей методике такие URL пока не трогает.

    istem, 24 Марта 2023

    Комментарии (5)
  9. Куча / Говнокод #28604

    +5

    1. 1
    Итак, теперь, когда на говнокодике осталась одна смегма, можно сделать вывод, кто же был сливками.

    И принцип от противного: можно понять. кто из сливок и несливок был смегмой.

    1. Инканус, производивший впечатление опытного спеца не брезгает общаться с быдлом. Его нахождение здесь сводится к подтролливанию с многочисленных ~оригинальных~ как ему кажется, учеток, и стёб на темы, далекие от программирования. Стало быть, он и ранее находился тут только ради этого. Иной раз, чтобы привлечь горстку уцелевших участников к комментированию, он проходит по стоку, постя ответы на рандомные комментарии, начинающиеся обычно словами "ну как": "ну как, сделал?" Человек недалекого ума, явно.

    2. Есть мнение, что Илья, известный как Борманд, также не прочь "помесить говнца", с гостевых учеток. Не палимся, ага.

    3. Подзалупная перхоть, вроде гостей а также неизвестно кому принадлежащих учеток, вроде ISO, Desktop, AnimeGovno и прочих, деятельность которых тоже сводится к пустому трепу на отвлеченные темы.

    4. Ну и разумеется, я - головка от часов "Заря". Я часто захожу сюда потроллить, но собственно, свою позицию я обозначил очень давно.

    hormand, 16 Февраля 2023

    Комментарии (5)
  10. Haskell / Говнокод #28602

    −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
    (define A (list 1 2 3 4 5 6))
    
    (define (filter number first-number)
      (cond ((= (modulo first-number 2) 0)
             (cond ((= (modulo number 2) 0) (list number))
                   (else '())))
            (else (cond ((not (= (modulo number 2) 0)) (list number))
                   (else '())))))
    
    (define (same-parity-impl L n)
      (let ((C (cdr L)))
        (cond ((null? C)
               (filter (car L) n))
              (else
               (append
                (filter (car L) n)
                (same-parity-impl C n))))))
    
    
    (define result (same-parity-impl A (car A)))
    
    (newline)
    (display result)
    (newline)

    Смотрите, что я сделал!

    JloJle4Ka, 15 Февраля 2023

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

    +4

    1. 1
    в паху выросли бородавки... ой бля, как мерзко.

    это потому, что губкой сперва помыл подмышки, а потом всё тело.
    надо в последнюю аучеред

    TAPAC, 21 Ноября 2022

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