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

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

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    For i := 1 to Length(Val)-1 do
      Begin
        If (Ord(Val[i]) >= 48) and (Ord(Val[i]) <= 57) and
        (not ((Ord(Val[i+1]) >= 48) and (Ord(Val[i+1]) <= 57))) then Result := true;
      End;

    ОТЦЕНИТИ КОД!!!1

    Govnocoder#0xFF, 25 Апреля 2011

    Комментарии (69)
  3. PHP / Говнокод #4564

    +147

    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
    Мой скромный говнокод для любителей фильтрации и xss
    При записи в базу 
    $msg = stripslashes(htmlspecialchars(trim($_POST['msg']))); // Очищаем от мусора
    Вывод из базы 
     
    function post($text, $html=true, $nl2br = true, $smiles = true, $bbcode = true) 
    {
     if ($html)
     {
     $text=html_entity_decode($text, ENT_QUOTES, 'UTF-8'); // в базе в htmllenties обратная перекодировка
     }
     if($smiles)
     { 
     $text = smiles($text);
     }
     if($bbcode)
     {
     $text = bbcode($text);
     }              
     if($nl2br)
     {
     $text = nl2br($text);
     } 
     
     return $text;
    }

    Недавно нашел в своем скрипте блога )

    Danis92, 09 Ноября 2010

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

    +157

    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
    if($_POST["gaap_month"])
    {
            $d_f = mktime(0,0,0,1,1,$_POST['f_year']);
            $w_start = intval(date("W", $d_f));
            $w_day = (intval(date("w", $d_f)) == 0) ? 6 : intval(date("w", $d_f)) - 1;
            $d_f = ($w_start == 1) ? $d_f - $w_day*24*60*60 : $d_f + (7-$w_day)*24*60*60;
            $d_f += (4*($_POST['gaap_month']-1) + intval(($_POST['gaap_month']-1)/3)) * 7*24*60*60;
            $d_t = ($_POST['gaap_month'] % 3 == 0) ? $d_f + 5*7*24*60*60 : $d_f + 4*7*24*60*60;
            $_POST["df"] = date("d.m.Y", $d_f);
            $_POST["dt"] = date("d.m.Y", $d_t);
    }
    
    $date_from = mktime(0,0,0,substr($_POST["df"],3,2),substr($_POST["df"],0,2),substr($_POST["df"],6,4));
    $date_to = mktime(23,59,59,substr($_POST["dt"],3,2),substr($_POST["dt"],0,2),substr($_POST["dt"],6,4));
    
      // if time period more than 20 days
    if ($date_to-$date_from > 61*24*60*60)
            $_POST["df"] = date("d.m.Y", $date_to - 61*24*60*60);
    
    if ($_GET['office'] && ($USER->isAdmin() || in_array("15", $USER->GetUserGroupArray())))
            $_POST['t_office'] = $_GET['office'];

    вопрос - что употребляет автор ?

    atarix12, 28 Июня 2010

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

    +66.4

    1. 1
    2. 2
    3. 3
    4. 4
    int str_length(const char *str)
    {
    	return (int)strlen(str);
    }

    Опенсорс, если чо.

    Ambilight, 03 Января 2010

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

    −7

    1. 1
    2. 2
    3. 3
    let x = 0.1;
    let y = 0.2;
    let z = x + y

    чему равно?

    ASD_77, 21 Декабря 2021

    Комментарии (68)
  7. Куча / Говнокод #26457

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    И ВОТ ДОРОГИЕ РЕБЯТА МЫ ПРОДОЛЖАЕМ РАЗБИРАТЬСЯ В БРИТАНСКОМ МЕЖДУНАРОДНОМ МОРСКОМ ПРАВЕ — СОГЛАСНО КОТОРОГО ВСЕ ЖИТЕЛИ ПЛАНЕТЫ И КОНКРЕТНО РУСИ 
    ЯВЛЯЮТСЯ БЕСПРАВНЫМИ И ИХ СТАТУС ПРИРАВНЕН К ЖИВОТНЫМ (ГОЯМ)… 
    А НА ЮРИДИЧЕСКОМ ЯЗЫКЕ ЭТО ЗНАЧИТ — ЧТО С ВАМИ МОГУТ ПОСТУПАТЬ КАК С ДИКИМИ ЖИВОТНЫМИ НА ОХОТЕ 
    И ЧЬЕЙ ТО ВЕЩЬЮ — ТАК ЖЕ КАК К ПРИМЕРУ КАБАНЫ, ЛОСИ, ЗАЙЦЫ И ПРОЧИЕ ЛЮДИ В ЛЕСУ И НА КАКОЙ ТО ТЕРРИТОРИИ — ПРИНАДЛЕЖАТ ИМЕННО ВЛАДЕЛЬЦУ ЛЕСА 
    ПО УМОЛЧАНИЮ СОГЛАСНА ДАННОЙ ЮРИСПРУДЕНЦИИ — А ВСЕ ЖИВОТНЫЕ НЕ ИМЕЮТ НИКАКИХ ПРАВ — И ТАК ДО ТЕХ ПОР ПОКА НЕ ЗАЯВЯТ О ТОМ ЧТО ОНИ ЖИВЫЕ ЛЮДИ 
    И ЯВЛЯЮТСЯ СУВЕРЕНАМИ (НЕЗАВИСИМЫМИ ЛЮДЬМИ — НИ ОТ КОГО И НИ ОТ ЧЕГО)…
    
    НУ КАК???… ВСЁ ПОНЯТНО???…

    3.14159265, 28 Февраля 2020

    Комментарии (68)
  8. Си / Говнокод #25977

    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
    /* --- PRINTF_BYTE_TO_BINARY macro's --- */
    #define PRINTF_BINARY_PATTERN_INT8 "%c%c%c%c%c%c%c%c"
    #define PRINTF_BYTE_TO_BINARY_INT8(i)    \
        (((i) & 0x80ll) ? '1' : '0'), \
        (((i) & 0x40ll) ? '1' : '0'), \
        (((i) & 0x20ll) ? '1' : '0'), \
        (((i) & 0x10ll) ? '1' : '0'), \
        (((i) & 0x08ll) ? '1' : '0'), \
        (((i) & 0x04ll) ? '1' : '0'), \
        (((i) & 0x02ll) ? '1' : '0'), \
        (((i) & 0x01ll) ? '1' : '0')
    
    #define PRINTF_BINARY_PATTERN_INT16 \
        PRINTF_BINARY_PATTERN_INT8              PRINTF_BINARY_PATTERN_INT8
    #define PRINTF_BYTE_TO_BINARY_INT16(i) \
        PRINTF_BYTE_TO_BINARY_INT8((i) >> 8),   PRINTF_BYTE_TO_BINARY_INT8(i)
    #define PRINTF_BINARY_PATTERN_INT32 \
        PRINTF_BINARY_PATTERN_INT16             PRINTF_BINARY_PATTERN_INT16
    #define PRINTF_BYTE_TO_BINARY_INT32(i) \
        PRINTF_BYTE_TO_BINARY_INT16((i) >> 16), PRINTF_BYTE_TO_BINARY_INT16(i)
    #define PRINTF_BINARY_PATTERN_INT64    \
        PRINTF_BINARY_PATTERN_INT32             PRINTF_BINARY_PATTERN_INT32
    #define PRINTF_BYTE_TO_BINARY_INT64(i) \
        PRINTF_BYTE_TO_BINARY_INT32((i) >> 32), PRINTF_BYTE_TO_BINARY_INT32(i)
    /* --- end macros --- */
    
    #include <stdio.h>
    int main() {
        long long int flag = 1648646756487983144ll;
        printf("My Flag "
               PRINTF_BINARY_PATTERN_INT64 "\n",
               PRINTF_BYTE_TO_BINARY_INT64(flag));
        return 0;
    }

    govnokod3r, 18 Октября 2019

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

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    std::queue<char *> outQueue2;
    std::lock_guard<std::mutex> lock(mtx);
    mtx.lock();
    if (outQueue.size() > 0) {
    std::swap(outQueue2, outQueue);
    outQueue = {};
    }
    std::lock_guard<std::mutex> unlock(mtx);

    со слов автора:
    у меня 2 исходящие очереди
    в одну соседний поток ложит
    потом приходит тик
    врубает симафор
    копирует по-бырому очередь
    и чистит её
    дальше отпускает поток
    чтобы не ждать
    пока всё отправится
    и спокойно в соседнем потоке уже начинает BYtestream...
    и всё такое
    разьве не так делают в домах парижу?

    heh1137, 22 Мая 2019

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

    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
    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
    #include "stdafx.h"
    #include<iostream>
    #include<map>
    #include<set>
    #include<string>
    #include<fstream>
    #include<iomanip>
    #include<algorithm>
    //#include<algorithm>
    using namespace std;
    int main()
    {
    	
    	setlocale(LC_ALL, "Russian");
    	multimap<string, int> mp;
    	multimap<string, int>::iterator it;
    	multimap<string, int>::iterator mit;
    	pair<multimap<string,int>::iterator, multimap<string, int>::iterator> pt;
    	set<int>nset;
    
    	string word;
    	char c = ' ';
    	
    
    	char s[256];
    	fstream inOut;
    	inOut.open("text.txt", ios::in);
    	for (int i = 1; i < 500; i++) {
    		inOut.getline(s, 256);
    	
    		char* pch;
    		pch = strtok(s, " ,-:");
    		while (pch != NULL) {
    			word = string(pch);
    			transform(word.begin(), word.end(), word.begin(), ::tolower);
    			mp.insert(pair <string, int>(word, i));
    			//cout « pch «'\t'«i« endl;
    			pch = strtok(NULL, " ,-:");
    		}
    	}
    	inOut.close();
    
    
    
    
    
    	set<string>set;
    
    	string tmp;
    
    	for (mit = mp.begin(); mit != mp.end(); mit++) {
    		tmp = (*mit).first;
    		if (set.find(tmp) != set.end()) {
    			continue;
    		}
    		else {
    
    			set.insert(tmp);
    			cout<<setw(15) << tmp << '\t';
    			pt = mp.equal_range(tmp);
    			
    			for (it = pt.first; it != pt.second; ++it) {
    				nset.insert(it->second);
    				
    			}
    			//cout << nset.size() << "     ";
    			for (it = pt.first; it != pt.second; ++it) {
    				
    				cout << it->second << ' ';
    			}
    			nset.clear();
    			cout << endl;
    		}
    	}
    	system("pause");
    	return 0;
    }

    Программа считывает слова сортирует и выдаёт все номера строк где данное слово встречается

    ArthurMakaev, 10 Апреля 2018

    Комментарии (68)
  11. Си / Говнокод #23534

    −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
    #include <stdio.h>
    #include <stdlib.h>
    
    int * ptr;
    
    int * getptr()
    {
      puts("getptr");
      return ptr;
    }
    
    int jump()
    {
      puts("jump");
      ptr = (int*)malloc(sizeof(int));
      return 1337;
    }
    
    int main()
    {
      ptr = (int*)malloc(sizeof(int));
      *ptr = 0;
    
      *( getptr() ) = 1;
      printf( "*ptr = %i\n\n", *ptr );
    
      *( getptr() ) = (jump(), 100);
      printf( "*ptr = %i\n\n", *ptr );
    
      *( getptr() ) = jump();
      printf( "*ptr = %i\n\n", *ptr );
    
      return 0;
    }

    ШИКАРНО:

    Start

    getptr
    *ptr = 1

    jump
    getptr
    *ptr = 100

    getptr
    jump
    *ptr = 0

    0

    Finish

    bugspawn, 15 Ноября 2017

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