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

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

    +154

    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
    #include "stdafx.h"
    #include "windows.h"
    #include <iostream>
    int main()
    {
    STARTUPINFOA si;
    PROCESS_INFORMATION pi;
    ZeroMemory( &si, sizeof(si) );
    ZeroMemory( &pi, sizeof(pi) );
    SECURITY_ATTRIBUTES secat;
    secat.nLength = sizeof(SECURITY_ATTRIBUTES);
    secat.bInheritHandle = TRUE;
    HANDLE newin, writein;
    CreatePipe(&newin,&writein,&secat,0);
    si.dwFlags = STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW;
    si.wShowWindow = SW_SHOWNORMAL;
    si.hStdInput=newin;
    GetStartupInfoA(&si);
    si.cb;
    CreateProcessA(NULL, "cmd.exe", NULL, NULL, TRUE, CREATE_NEW_CONSOLE, NULL, NULL, &si, &pi);
    DWORD bytes;
    char command[100] = "mkdir 1254655553";
    WriteFile(writein, command, 100, &bytes, NULL);
    std::cin.get();
    }

    Создание директории.
    p.s. ачат и иже с ним.

    guest, 10 Апреля 2009

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

    +151

    1. 1
    2. 2
    3. 3
    </div>
        <b class="r1"></b><b class="r1"></b><b class="r1"></b><b class="r2"></b><b class="r2"></b><b class="r3"></b><b class="r4"></b><b class="r5"></b><b class="r7"></b><b class="r10"></b>
    </div>

    говнокод из хтмл-ки >>>ЭТОГО<<< сайта! ;)

    guest, 10 Апреля 2009

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

    +118.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
    private string StrColor(decimal x)
    {
    	if (x.ToString().Contains("-"))
    	{
    		string adj = x.ToString();
    		adj = string.Concat("(", adj.Substring(1, adj.Length - 1), ")");
    		//adj = System.Drawing.Color.Red.ToString();
    		return adj;
    
    	}
    	else
    	{
    		return x.ToString();
    	}
    }

    Определение знака числа в строке 3

    guest, 09 Апреля 2009

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

    −276.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
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    Function ShowAddressBook() As String
    On Error GoTo ErrorHandler
    
        Dim miTempItem As MailItem
        Dim inTempInspector As Inspector
        Dim Pomoechka As MAPIFolder
        Dim objNS As outlook.NameSpace
        
        
        ' Загружаем шаблон формы онового сообщения
        ' на нём есть нужная кнопка
        Dim Reg As New CReg
    10    Reg.m_MainKey = "Software\Content Manager\MS_OUTLOOK"
        
    20    Set miTempItem = Application.CreateItemFromTemplate(Reg.GetValue("path") & "\crutch.oft")
    30    Set inTempInspector = miTempItem.GetInspector
        
    32      miTempItem.UserProperties.Add("TempItemForAddressBook", olYesNo) = True
                 
        ' Убираем инспектор с глаз долой
    40    inTempInspector.Left = -20000
    50    inTempInspector.Top = -20000
    '51    inTempInspector.Width = 0
    '52    inTempInspector.Height = 0
        
        ' пока инспектор не покажеться адресбук из него не выдавишь
    60    inTempInspector.Activate
        ' если до вызова адресбука пользователь работал
        ' с развёрнутым на весь экран письмом - то хрен мы его куда свинем
        ' нужно, поэтому, вернуть нормальное состояние
    70    inTempInspector.WindowState = olNormalWindow
    
        ' правда, это в некоторых случаях моргает - но поставить olonormalWindow
        ' до того как инспектор показан - нельзя.
        ' рахзвёрнутость ил не развёрнутость задаёться в реестре по пути
        ' HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\Message\Frame
        ' там храниться REG_BINARY и внём меняетсья 0xB байт либо на 3 либо на 1
        
        ' подгрузили всё что надо - вызываем саму книгу
    'НОВАЯ ВЕРСИЯ
    80 inTempInspector.CommandBars.FindControl(Id:=353).Execute
        Dim strBuff As String
        ' Пока не сделаю сейв, поле TO через мапи будет не доступным
    90    miTempItem.save
        ' получаю поле ТО через MAPI
        ' если попытаться взять его на прямую - то аутлук будет ругатся
        ' своим ёбанным диалогом безопасности
        
    100    strBuff = GetToField(miTempItem)
        
        ' закрываем итемку
    110    miTempItem.Close olDiscard
        
        
        ' Теперь, из-за того что вызывали метод save итемка лежит в папке
        ' с черновиами, нахер она там не сдалась - нужно удалять
        ' если её просто удалить .delete то она передвиниться в папку
        ' с удалёнными письмами - тоже нафик не надо
        ' поэтому, сначала переносим её в эту папку самостоятельно
        ' и от туда вызываем .delete - письмо исчезает
        
        ' Получаем доступ к папке с удалёнными письмами
        
    120    Set objNS = Application.GetNamespace("MAPI")
        ' вот тут она лежит
    130    Set Pomoechka = objNS.GetDefaultFolder(olFolderDeletedItems)
    
        ' перемещаем туда письмецо
    140    miTempItem.Move Pomoechka ' хотя можно и просто     miTempItem.Delete
    
        ' теперь берём последнее письмо из помойки - это наше
        ' и удаляем его от туда
    150    Pomoechka.Items(Pomoechka.Items.Count).Delete
        ' Теперь письма нету
        
        
        ShowAddressBook = strBuff
    
    KillObjects:
        ' Всё подчистим
    160   Set miTempItem = Nothing
    170   Set inTempInspector = Nothing
    180   Set Pomoechka = Nothing
    190   Set objNS = Nothing
    200   Set Reg = Nothing
            Exit Function
    ErrorHandler:
            subGlobalErrorHandler Err.Description, Err.number, Erl, "ShowAddressBook"
            Resume KillObjects
        
    End Function

    EPIC FAIL

    Вызов диалога адресной книги аутлука, и получение выбранных в ней адресов.

    guest, 09 Апреля 2009

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

    +148

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    <div class="hright"><span id='ratig-layer-1146605335'><div class="rating" style="float:left;">
    <ul class="unit-rating">
    <li class="current-rating" style="width:0px;">0</li>
    <li><a href="#" title="Плохо" class="r1-unit" onclick="dleRate('1', '1146605335'); return false;">1</a></li>
    <li><a href="#" title="Приемлемо" class="r2-unit" onclick="dleRate('2', '1146605335'); return false;">2</a></li>
    <li><a href="#" title="Средне" class="r3-unit" onclick="dleRate('3', '1146605335'); return false;">3</a></li>
    <li><a href="#" title="Хорошо" class="r4-unit" onclick="dleRate('4', '1146605335'); return false;">4</a></li>
    <li><a href="#" title="Отлично" class="r5-unit" onclick="dleRate('5', '1146605335'); return false;">5</a></li>
    </ul>
    </div></span></div>

    guest, 08 Апреля 2009

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

    +142.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
    #include <stdio.h>
    #include <alloc.h>
    
    #define PRINT_RESULT {for(cheacksum1=0,i=MaxV-1;i>=0;cheacksum1+=vect[i--]);for(j=i=cheacksum2=0;j<MaxA;i<MaxA?cheacksum2+=mass[j][i++]:(j++,i=0));printf("CHEACKSUM: %d <-> %d\n",cheacksum2,cheacksum1);}
    
    int main(void)
    {
        int **mass,*vect,MaxV,MaxA,x,y,i,j,z,k,l,s,m,cheacksum1,cheacksum2;
        MaxV *= MaxV = MaxA = 200; 
        for(i=0,vect=(int*)malloc(sizeof(int)*MaxV),mass=(int**)malloc(sizeof(int*)*MaxA);i<MaxA;mass[i++]=(int*)malloc(sizeof(int)*MaxA));
        for(i=0,j=0;i<MaxA;j<MaxA?mass[i][j++]=rand()%10:(i++,j=0));
        /* A */ for(y=z=j=0,i=x=MaxA-1;y<MaxA;(j>=MaxA||i>=MaxA?((x>0?x--:y++),i=x,j=y):vect[z++]=mass[i++][j++]));
        PRINT_RESULT;
        /* B */ for(y=x=z=j=i=0;y<MaxA;(j>=MaxA||i<0?((x<MaxA-1?x++:y++),i=x,j=y):vect[z++]=mass[i--][j++]));
        PRINT_RESULT;
        /* C */ for(s=z=k=0,l=1,m=x=y=MaxA%2==0?m=x=y=MaxA/2-1:MaxA/2;x<MaxA&&y<MaxA&&x>=0&&y>=0;k++<l?vect[z++]=mass[s==1?y++:s==3?y--:y][s==0?x++:s==2?x--:x]:(k=0,s++<3?(s==2?l++:0):(s=0,l++)));
        PRINT_RESULT;
        /* D */ for(z=x=y=k=0,s=-1,l=MaxA-1;l>=0;l>0?k++<l?vect[z++]=mass[s==0?y++:s==2?y--:y][s==1?x--:s==0||s==2?x:x++]:(k=0,s++<3?(s==2?l--:0):(s=0,l--)):(vect[z]=mass[y][x],l--));
        PRINT_RESULT;
        for(x=0;x<MaxA;free(mass[x++])); free(vect); free(mass);
        return 0;
    }

    Лабораторная работа (давно было дело... не помню, окончательная версия или нет) :]

    Обход матрицы и запись результата обхода в одномерный массив.
    а) по правой диагонали начиная с правого верхнего
    элемента
    б) с левого верхнего.
    с) по сперали
    д) по сперали начниная с левого верхрего элемента.

    guest, 06 Апреля 2009

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

    +958.8

    1. 1
    idString.Length == Guid.NewGuid().ToString.Length()

    Самый имхо индусский (см. лукмор) код проверить что строка это Guid

    guest, 30 Марта 2009

    Комментарии (4)
  9. Си / Говнокод #782

    +139.5

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    if(strncmp(I_CUR->E98,"",sizeof("")-1) != 0)
    {
        /** Fehler **/
        ret=create_error(1,1,"",NULL,NULL);
        set_error_msgseg(-1,-1,"CUR",NULL," E98",-1);
        if (ret==FEHLER)
            return ret;
    }

    Генератор сорса для одного проекта в очень крупной конторе дает такой код, который должен сообщать об ошибке.

    Долго я удивлялся, что ошибок не появляется
    if(0 != 0)

    guest, 27 Марта 2009

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

    +143.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
    <select name="wday_finish"/>
                           <?php
                                   if ( $wday_finish == '-' ) { $default = ' selected'; }
                                   else {$default = '';}
                                   echo "<option value=\"-\" $default>-";
    
                                   if ( $wday_finish == 'mon' ) { $default = ' selected'; }
                                    else {$default = '';}
                                   echo "<option value=\"mon\" $default>" . _("Monday");
    
                                    if ( $wday_finish == 'tue' ) { $default = ' selected'; }
                                   else {$default = '';}
                                    echo "<option value=\"tue\" $default>" . _("Tuesday");
    
                                    if ( $wday_finish == 'wed' ) { $default = ' selected'; }
                                   else {$default = '';}
                                    echo "<option value=\"wed\" $default>" . _("Wednesday");
    
                                    if ( $wday_finish == 'thu' ) { $default = ' selected'; }
                                    else {$default = '';}
                                    echo "<option value=\"thu\" $default>" . _("Thursday");
    
                                    if ( $wday_finish == 'fri' ) { $default = ' selected'; }
                                    else {$default = '';}
                                    echo "<option value=\"fri\" $default>" . _("Friday");
    
                                    if ( $wday_finish == 'sat' ) { $default = ' selected'; }
                                    else {$default = '';}
                                    echo "<option value=\"sat\" $default>" . _("Saturday");
    
                                   if ( $wday_finish == 'sun' ) { $default = ' selected'; }
                                    else {$default = '';}
                                    echo "<option value=\"sun\" $default>" . _("Sunday");
                           ?>

    freepbx. timeconditions module.

    guest, 26 Марта 2009

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

    +139.7

    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
    // получаем следующее уникальное имя закачиваемого файла
    function getFilename()
    {
        mysql_query('insert into `filenames` (num) values (1)');
        $id = mysql_insert_id();
        mysql_query('delete from `filenames` where id<' . $id);
        $str = date('Y') . '/' . date('m') . '/' . date('d') . '/' . $id . '_' . rand(1000,
            9999);
    
        list($dir1, $dir2, $dir3, $id) = explode('/', $str);
        checkPictureDirs($dir1, $dir2, $dir3);
    
        return $str;
    }

    Может это круто напрягать БД для получения уникального ID для имени файла.

    guest, 24 Марта 2009

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