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

    +155

    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
    char Sort(char Type, int l, int r)
    {
      int i = l, j = r;
      char x[31];
      void *y = 0;
      setmem(x, 31, 0);
      strcpy(x, ((TData*)(DataLists[CurrentList][(l+r)/2]))->Data[CurrentCol-1]);
      do
      {
        if (Type==UP)
        {
          switch(CurrentCol)
          {
    	case 1: case 2:
    	  while (strcmp(((TData*)(DataLists[CurrentList][i]))->Data[CurrentCol-1], x) < 0)
    	    ++i;
    	  while (strcmp(((TData*)(DataLists[CurrentList][j]))->Data[CurrentCol-1], x) > 0)
    	    --j;
    	  break;
    	default:
    	  while (atoi(((TData*)(DataLists[CurrentList][i]))->Data[CurrentCol-1])<atoi(x))
    	  ++i;
    	  while (atoi(((TData*)(DataLists[CurrentList][j]))->Data[CurrentCol-1])>atoi(x))
    	  --j;
          }
        }
        else
        {
          switch(CurrentCol)
          {
    	case 1: case 2:
    	  while (strcmp(((TData*)(DataLists[CurrentList][i]))->Data[CurrentCol-1], x) > 0)
    	    ++i;
    	  while (strcmp(((TData*)(DataLists[CurrentList][j]))->Data[CurrentCol-1], x) < 0)
    	    --j;
    	  break;
    	default:
    	  while (atoi(((TData*)(DataLists[CurrentList][i]))->Data[CurrentCol-1])>atoi(x))
    	    ++i;
    	  while (atoi(((TData*)(DataLists[CurrentList][j]))->Data[CurrentCol-1])<atoi(x))
    	    --j;
          }//switch
        }//if
        if (i<=j)
        {
          y = DataLists[CurrentList][i];
          *(DataLists[CurrentList].GetPointerToData(i)) = DataLists[CurrentList][j];
          *(DataLists[CurrentList].GetPointerToData(j)) = y;
          ++i, --j;
        }
      }
      while (i<=j);
        if (l<j)
        {
          if (Type==UP)
    	Sort(UP, l, j);
          else
    	Sort(DOWN, l, j);
        }
      if (i<r)
      {
        if (Type==UP)
          Sort(UP, i, r);
        else
          Sort(DOWN, i, r);
      }
    return 1;
    }

    По-моему, это должна была быть сортировка Хоара, а получилось говно. Самое странное - это то, что оно работает...

    Max ID, 21 Мая 2010

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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    void main(void)
    {
      int s, e, x, y, n, i, g, e, r, s;
      // действия с вышеобъявленными переменными
      return;
    }

    Max ID, 21 Мая 2010

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

    +173

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    # текст сообщений об ошибке
    $errDescr[1] = NETCAT_MODERATION_MSG_ONE;
    $errDescr[2] = NETCAT_MODERATION_MSG_TWO;
    $errDescr[6] = NETCAT_MODERATION_MSG_SIX;
    $errDescr[7] = NETCAT_MODERATION_MSG_SEVEN;
    $errDescr[8] = NETCAT_MODERATION_MSG_EIGHT;
    $errDescr[21] = NETCAT_MODERATION_MSG_TWENTYONE;

    Чьорт, я обожаю этих ребят. Они мои герои.

    telnet, 21 Мая 2010

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

    +135

    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
    95. 95
    96. 96
    int param_check(char *func, ...) {
      int fail;
      va_list al;
    
      if (!func) {
        return(1);
      }
      
      va_start(al, func);
      fail=0;
      if (!strcmp(func, "vnetGenerateDHCP") || !strcmp(func, "vnetKickDHCP")) {
        vnetConfig *a = va_arg(al, vnetConfig *);
        if (!a) {
          fail=1;
        }
      } else if (!strcmp(func, "vnetAddPublicIP") || !strcmp(func, "vnetAddDev")) {
        vnetConfig *a = va_arg(al, vnetConfig *);
        char *b = va_arg(al, char *);
        if (!a || !b) {
          fail=1;
        }
      } else if (!strcmp(func, "vnetAddHost")) {
        vnetConfig *a = va_arg(al, vnetConfig *);
        char *b = va_arg(al, char *);
        char *c = va_arg(al, char *);
        int d = va_arg(al, int);
        if (!a || !b || (d < 0) || (d > NUMBER_OF_VLANS-1)) {
          fail=1;
        }
      } else if (!strcmp(func, "vnetGetNextHost")) {
        vnetConfig *a = va_arg(al, vnetConfig *);
        char *b = va_arg(al, char *);
        char *c = va_arg(al, char *);
        int d = va_arg(al, int);
        if (!a || !b || !c || d < 0 || d > NUMBER_OF_VLANS-1) {
          fail=1;
        }
      } else if (!strcmp(func, "vnetDelHost") || !strcmp(func, "vnetEnableHost") || !strcmp(func, "vnetDisableHost")) {
        vnetConfig *a = va_arg(al, vnetConfig *);
        char *b = va_arg(al, char *);
        char *c = va_arg(al, char *);
        int d = va_arg(al, int);
        if (!a || (!b && !c) || d < 0 || d > NUMBER_OF_VLANS-1) {
          fail=1;
        }
      } else if (!strcmp(func, "vnetDeleteChain") || !strcmp(func, "vnetCreateChain")) { 
        vnetConfig *a = va_arg(al, vnetConfig *);
        char *b = va_arg(al, char *);
        char *c = va_arg(al, char *);
        if (!a || !b || !c) {
          fail=1;
        }
      } else if (!strcmp(func, "vnetTableRule")) {
        vnetConfig *a = va_arg(al, vnetConfig *);
        char *b = va_arg(al, char *);
        char *c = va_arg(al, char *);
        char *d = va_arg(al, char *);
        char *e = va_arg(al, char *);
        char *f = va_arg(al, char *);
        char *g = va_arg(al, char *);
        if (!a || !b || !c || !d || (!e && !f && !g)) {
          fail=1;
        }
      } else if (!strcmp(func, "vnetSetVlan")) {
        vnetConfig *a = va_arg(al, vnetConfig *);
        int b = va_arg(al, int);
        char *c = va_arg(al, char *);
        char *d = va_arg(al, char *);
        if (!a || b < 0 || b >= NUMBER_OF_VLANS || !c || !d) {
          fail=1;
        }
      } else if (!strcmp(func, "vnetDelVlan")) {
        vnetConfig *a = va_arg(al, vnetConfig *);
        int b = va_arg(al, int);
        if (!a || b < 0 || b >= NUMBER_OF_VLANS) {
          fail=1;
        }
      } else if (!strcmp(func, "vnetInit")) {
        vnetConfig *a = va_arg(al, vnetConfig *);
        char *b = va_arg(al, char *);
        char *c = va_arg(al, char *);
        char *d = va_arg(al, char *);
        int e = va_arg(al, int);
        if (!a || !b || !c || d<0) {
          fail=1;
        }
      }
    
      va_end(al);
    
      if (fail) {
        logprintfl (EUCAERROR, "INTERNAL ERROR: incorrect input parameters to function %s\n", func);
        return(1);
      }
      return(0);
    }

    raorn, 21 Мая 2010

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

    +143

    1. 1
    <img src="\rus\windows\internet-explorer\images\waterdrop_banner_887.jpg" height="380" width="958" />

    Источник: http://www.microsoft.com/rus/windows/internet-explorer/welcome.aspx

    Это полный комплект для интернета. Интернета, каким он нужен именно вам. Общение, информация и безопасность. Воспользуйтесь функциями Internet Explorer 8, чтобы создать свой интернет. ©
    Сука.

    anmiles, 21 Мая 2010

    Комментарии (18)
  6. Си / Говнокод #3285

    +143

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    bool flag = getFlag();
    switch (flag)
    {
    case true:
        // do something
        break;
    case false:
        // do something else
        break;
    default:
       // do something more (??!)
    }

    бывает же...

    glook, 21 Мая 2010

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

    +160

    1. 1
    2. 2
    case false:
    default:

    :)

    DmitryDick, 21 Мая 2010

    Комментарии (26)
  8. VisualBasic / Говнокод #3283

    −368

    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
    Public Function Chten(adr As String, TK As Boolean) As String
    Dim str As String
    Dim strr As String
    Dim i As Long
    If DirectoryExists(adr) = True Then
      Dim FLong As Long
      Open adr For Binary As #1
      FLong = Loc(1)
      Do While FLong < LOF(1)
        str = str + Input(1, #1)
        FLong = Loc(1)
      Loop
      Close #1
      strr = str
      If TK = True Then
      strr = ""
      Dim j As Long
      j = Len(str)
      For i = 1 To j
        If ((i Mod 8) = 0) Or (i = j) Then
            strr = strr + RTK(Mid(str, 1, 8))
            str = Mid(str, 9)
        End If
      Next
      End If
      Chten = strr
    End If
    End Function
    
    'есть ли
    'видно что функцию он где-то взял - см. другой стиль именования переменных и отступы
    'но при этом сама и функция тоже попахивает
    Public Function DirectoryExists(ByVal strPathName As String) As Boolean
        Dim DirectoryFound As String
        Const errPathNotFound As Integer = 76
        On Error GoTo 0
        DirectoryFound = Dir(strPathName, vbDirectory)
        If (Len(DirectoryFound) = 0 Or Err = errPathNotFound) Then
            DirectoryExists = False
        Else
            DirectoryExists = True
        End If
    End Function

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

    3.14159265, 21 Мая 2010

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

    +162

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    class Massiv{
          int *a;
    public:
           void Sozd(int k);
    };
    
    void Massiv::Sozd(int k)
    {
         a=(int *) malloc (sizeof(int) * (k+3));
    }

    У меня будет свой конструктор!

    kir_rik, 20 Мая 2010

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

    +165

    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
    <?php 
    
            define('URL', 'http://shop.megafonnw.ru/spb/?pageid=5&subpageid=5&rnd=18'); 
    
            $fp = fopen('URL', 'r'); 
    
            $fpt = fopen('script.txt', 'r+'); 
    
            $fpn = fopen('new.txt', 'r+'); 
    
            $cont = file_get_contents(URL); 
    
            $man = substr($cont, 14900, 7636); 
    
            $script = file_get_contents('script.txt'); 
    
            $new = file_get_contents('new.txt'); 
    
            if($script == "") { 
    
                fwrite($fpt, $man); 
    
                print "script zapisan!"; 
    
            }else { 
    
                if($script == $new) { 
    
                    $ret = fwrite($fpn, $man); 
    
                    print $ret."<br/>"; 
    
                    $sost = "No changed!"; 
    
                    ftruncate($fpn, 0); 
    
                }else { 
    
                    $ret = fwrite($fpn, $man); 
    
                    print $ret."<br/>"; 
    
                    $sost = "Text has been changed!"; 
    
                    ftruncate($fpt, 0); 
    
                    $ret2 = fwrite($fpt, $new); 
    
                    print $ret2."<br/>"; 
    
                    print strlen($new); 
    
                    ftruncate($fpn, 0); 
    
                } 
    
                print "script ne zapisan"; 
    
            } 
    
                print "\n\t<br/>".$sost; 
    
            fclose($fpn); 
    
            fclose($fpt); 
    
            fclose($fp); 
    
            ?>

    особо порадовала строка substr($cont, 14900, 7636);

    GoodTalkBot, 20 Мая 2010

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