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

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

    +132

    1. 1
    2. 2
    3. 3
    <?php
    echo "preved";
    ?>

    guest, 03 Июля 2009

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

    +132

    1. 1
    2. 2
    3. 3
    4. 4
    /**
    *  "КАК БЫ сделал и ВРОДЕ БЫ работает."
    *
    **/

    Типичный отчёт говнокодера.

    guest, 02 Марта 2009

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

    +131.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    np_char=`awk '{
            for(i=1;i<=length($0);i+=1){
                symb=substr($0,i,1);
                if (symb < " ")
                    {
                        print symb;
                        exit 9;
                    }
                    }}' $1`
    
    hex_code=`echo "$np_char" | hexdump -n 1 -e '1/1 "%X" "\n"'`

    Поиск и вывод непечатных символов в файле...
    Это я еще молчу об этической стороне hexdump.

    nil, 16 Ноября 2009

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

    +131.8

    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
    def ad30 // Все понятно из названия, да?
    vgl start_naht 3
    baw gr
    spg ad40
    
    aktuelle_naht = 3 ;
    lad vsp 53 aktuelle_naht ;
    spg up setze_npk_abs ;
    
    vgl start_naht 3
    baw gl
    PPZ # R100 Z1 z1_start Z2 P8 Z3 P9 ;
    
    z1_start = -1590
    z1_ziel =  -2985
    vgl tisch_nr 2
    baw gl
    spg ad31
    z1_start = z1_start + tisch_abstand ;
    z1_ziel  = z1_ziel  + tisch_abstand ;
    def ad31
    z1_soll = z1_start
    
    lad r1 R65
    lad r2 R66
    R1.C = c3_soll ;
    R2.C = c3_soll ;
    R1.B = 0;
    R2.B = 0;
    
    spg up verschiebe_nahtanfang ; 
    
    spg up fahre_z1 ;
    PPZ # A1 -12.13 A2 -15.73 A3 114.05 A4 24 A5 40 A6 -208 Z1 z1_start Z2 P8 Z3 P9
    
    pnd_amp = pnd_amp_laengs ;
    pnd_len = pnd_amp * 0.8
    
    dx = -delta_x_npk
    ges_schweiss = ges_schweiss_orig * 0.85
    npk 4 rel x dx  y 0 z delta_z_npk a 0 b 0 c 0
    
    spg up laengsnaht_ohne_messen ;
    
    ; ------- Veraenderte Punkte speichern
    vgl za_soll 90
    baw kl
    spg ad35
    ; ------- Oberseite -----------------------
    lad r605 r1
    lad r606 r2
    spg ad36
    ; ------- Unterseite ----------------------
    def ad35
    lad r625 r1
    lad r626 r2
    def ad36
    
    lad p1 pos
    
    spg up freifahren
    
    spg up anfahr_ges ;
    p2 = p2 - ( z1_start - z1_ziel )
    liz x p1 y p2 z p3 a p4 b p5 c p6 z1 z1_start z2 p8 z3 p9
    
    spg up grundstellung
    
    spg up brenner_reinigen ;
    
    ; --------------------------------------------------------------
    ; Schweissnaht 4 (Roboterseite)
    ; --------------------------------------------------------------
    def ad40
    vgl start_naht 4
    baw gr
    spg ad50
    
    aktuelle_naht = 4 ;
    lad vsp 53 aktuelle_naht ;
    spg up brenner_reinigen ;
    
    z1_start =   -1590
    z1_ziel  =  -2985
    vgl tisch_nr 2
    baw gl
    spg ad41
    z1_start = z1_start + tisch_abstand ;
    z1_ziel  = z1_ziel  + tisch_abstand ;
    def ad41
    z1_soll  = z1_start ;
    
    lad r1 R67
    lad r2 R68

    Это язык SRCL, используется на некоторых роботах, зовется высокоуровневым. Однако не умеет даже передавать параметры в функции.

    Особенно умиляют команды типа PPZ и LIZ и названия типа aktuelle_naht - писал немец :)

    В конце концов, чтобы запрограммировать этого робота пришлось писать свой конструктор программ, который выдавал эту лажу мегатоннами (а в чем еще измерять разрушительную силу этой хрени??).

    karevn, 11 Февраля 2010

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

    +131.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    public string EncodeParameter_1251(string param) {
    	var result = new StringBuilder();
    	foreach (var bt in Encoding.GetEncoding("windows-1251").GetBytes(param)) result.AppendFormat("%{0}", bt.ToString("X02"));
    	return result.ToString(); 
    }

    метод кодирующий значение параметра запроса в "windows-1251" в формате URL (%FF%FF%FF...).
    у проекта кодировка запросов в "UTF-8", но у остальных проектов - "windows-1251", и в другой кодировке они некорректно обрабатывают кириллицу в строке запроса. знаю, наговнокодил, ну а шо поделаеш...

    xeonix, 12 Октября 2009

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

    +131.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    class Par_host_port
    {
    private:
            std::string vdata;
    public:
    //...
            char* get () { return (char*)vdata.c_str (); }
    };

    char const* превращается... Превращается char const*... В char*!

    guest, 15 Июля 2009

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

    +131.6

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    <div style="width:100%; text-align:center; height:95%; position: absolute ; left:0; top:0;  text-align:center;  "  >
          
          
                <table id="TableHead" cellpadding="0" cellspacing="0" style="text-align:center;width: 400px; margin-top:-150px; margin-left:-200px;    position:absolute; top: 50%; " align="center">
    
    ...
    </div>

    ну не красотень

    alex_donetsk, 01 Апреля 2010

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

    +131.6

    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
    #!/bin/bash
    function get_group()
    {
    rm ./group
    gnc=`cat /etc/group | wc -l`
    cn=1
    while let "cn<=gnc"
    do
    gn=`cat /etc/group | head -n $cn | tail -n 1 | tr ':' '\n' | head -n 1 | grep [A-Za-z0-9].*`
    gnl=`cat /etc/group | head -n $cn | tail -n 1`
    echo $gnl
    echo "Do you want add your to group "$gn
    read as
    if [ "$as" == "yes" ]; then
    echo "yes"
    c=`echo $gnl | wc -c`
    let c--
    ct=":"
    echo $c
    cn2=`echo $gnl | cut -c$c`
    echo "cn2 "$cn2
    if [ "$cn2" != ":" ]
    then
    echo no
    gnl=$gnl","
    gnl=$gnl"$1"
    echo $gnl >> ./group
    else
    gnl=$gnl""$1
    echo $gnl >> ./group
    fi
    echo $gnl
    else
    echo $gnl >> ./group
    fi
    
    let cn++
    done
    cp ./group /etc/group
    }
    
    if [ $# -lt 1 ]; then
    echo -n "Enter username:"
    read username
    uid=1
    puid=0
    while :
    do
    uid=`echo ${RANDOM:0:3}`
    puid=`cat /etc/passwd | tr ':' '\n' | grep ^[0-9].*$ | grep $uid`
    if [ "$puid" == "" ];then
    echo "uid = $uid"
    echo "puid = $puid"
    echo $username
    groupadd $username
    gid=`cat /etc/group | grep $username | tr ':' '\n' | grep ^[0-9].*$ | head -n 1 | tail -n 1`
    echo "gid "$gid
    echo -n "Enter shell:"
    read ushell
    echo -n "Enter your name:"
    read rname
    echo $username:x:$uid:$gid:$rname:/home/$username:$ushell >> /etc/passwd
    echo $username:Jkirh5i3e/GqU:14318:0:99999:7:7:: >> /etc/shadow
    echo "Your password www.yandex.ru"
    mkdir /home/$username
    chmod u+r+w+x /home/$username
    chmod g+r+w+x /home/$username
    chmod o+r+w+x /home/$username
    get_group $username
    exit 0
    else
    uid=`echo ${RANDOM:0:3}`
    echo $uid
    echo "puid "$puid
    fi
    
    done
    
    fi
    echo -n "script havnt command line arguments"
    exit 0

    Регистрирует пользователя в системе

    guest, 27 Апреля 2009

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

    +131.5

    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
    private void set_mode(bool mod)
    {
        if(mod==true)
        {
            label1.Enabled=true;
            button1.Enabled=true;
            button2.Enabled=true;
            button3.Enabled=false;
            button4.Enabled=false;
        }
        else
        {
            label1.Enabled=false;
            button1.Enabled=false;
            button2.Enabled=false;
            button3.Enabled=true;
            button4.Enabled=true;
        }
    }

    Типа настройка интерфейса..(тихий ужас)

    guest, 05 Февраля 2009

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

    +131.4

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    internal static System.Drawing.Font ToWindowsFont(Microsoft.Office.Interop.PowerPoint.Font ppFont)
    {
    	FontStyle style = ToGdiFontStyle(ppFont.Style);
    	System.Drawing.Font gdiFont = new System.Drawing.Font(ppFont.Name, ppFont.Size, style);
    	// из-за следующей строчки проект не скомпилируется под .NET 2.0, требуя ещё и один из более новых SP
    	if ( windowsFont.Name != windowsFont.OriginalFontName )
    	{
    		windowsFont = new System.Drawing.Font(TextConverter.DefaultUnicodeSubstituteFont, ppFont.Size, style);
    	}
    	return windowsFont;
    }

    Баг был случайно найден на виртуалке с чистой Windows XP и MS Visual Studio 2005, поскольку мы по собственной глупости упустили тот факт, что на хост-машинах давно стоит .NET 3.5. Строчка "if ( windowsFont.Name != ppFont.Name )" решает проблему совместимости. Вот как иногда из-за маленькой, не бросающейся в глаза, ошибки можно завалить весь проект. Каюсь, этот код - мой. ))

    cyba, 31 Декабря 2009

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