1. PHP / Говнокод #6648

    +163

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    $arItems = $arResult["ITEMS"] ;
    
    for($j=0; $j<count($arItems); $j++)
    {
       $p = rand(0, count($arItems)-1);
       $buf = $arItems[$j];
       $arItems[$j] = $arItems[$p];
       $arItems[$p] = $buf;
    }
    
    $arResult["ITEMS"] = $arItems;

    Своя реализация PHP функции shuffle ))

    govnomes, 13 Мая 2011

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

    +127

    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
    Сотрудничество с начинающими кодерами, Wеb мастерами...
    
    Зачем это нужно?
    В партнёрстве ты получаешь бесплатные высококачественные консультации по компам, а в замен нужно раскручивать мои сайты, и кликать по ссылочкам. Это может быть выгодно нам обоим!
    
    Что это мне даст?
    OnLine обучение следующим технологиям: html, CSS, JavaScript, С++, Делфи... Обучение проводится в удобной, максимально понятной форме, коммуникабельным человеком!
    
    А что именно мне нужно будит делать, чтобы ты меня обучал?
    Привлекать как можно больше юзеров на сайт, писать на разных форумах, гостевых книгах, каталогах, досках объявлений, у себя в подписи на форумах сообщения типа: Зацените мой сайт - http://сайт, который я скажу.ru. Ещё кликать на рекламные ссылки :) Я внимательно слижу за статистикой, так что обмануть меня не удастся! ;)
    
    А когда начнётся обучение, и как долго оно будит проводится?
    После того, как посещаемость на раскручиваемом тобой ресурсе увеличится на 20 человек в сутки - могу обучать тебя в течении 10 минут, ещё 20 челове - +10 минут, если ты привлечешь 60 человек в сутки - 30 минут, и.т.д :)
    
    Допустим я буду исправно размещать ссылки на твой сайт на разных сайтах, сколько примерно юзеров это привлечёт?
    Всё зависит от посещаемости ресурса, на котором ты размещаешь ссылку, если это крупный сайт то размещения лишь одного объявления будит достаточно для привлечение 40 чел в сутки :)
    
    Я согласен на твои условия! Как с тобой связаться, задать интересующий вопрос?
    Связаться со мной можно по e-mail, либо по icq: 6461949

    http://websprojects.ru/index.html

    Vasiliy, 13 Мая 2011

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    while ( strlen ( &ParseSMS[pos] ) != 0 )
    {
        Byte0 = HexToByte(&ParseSMS[pos]);
        pos += 2;
    
        pSMS->sms[txt_counter] = Byte0;
        txt_counter ++;
    }

    достались исходнички. Человек не знает, как работает strlen
    а буфер то на 140 байт !

    megajohn, 13 Мая 2011

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

    +130

    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
    #include<stdio.h>
    #include<string.h>
    
    int main()
    {
      char s[81]; //Строка
      int k,    //Номер слова в строке
           i,j;   //Параметры цикла
      
      puts("Vvedite stroky");
      gets(s);
      int m=strlen(s); //Кол-во символов в строке
      puts("Stroka:");
      puts(s);
      // начало косыля
      int n=0;
      for(i=1;i<=m;i++) if(s[i]==' '&&s[i+1]!=' ') n++;
      // конец костыля
      if(s[m]==' '){i=m; k=0;}
      else{i=m-1; k=1;}
      while(1<i){
        if(s[i]!=' '&&s[i-1]==' ') k=k+1;
        if(k==n&&s[i-1]!=' '){ 
    	m=m+1; j=m;
        while(j>i){s[j]=s[j-1]; j--;}
        s[i]='*'; i--;}
        else i=i-1;
      }
      puts("Izmenennaia stroka:");
      puts(s);
      fflush(stdin);
      return 0;
    }

    dark-al, 13 Мая 2011

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

    +164

    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
    template < int Order, typename T >
    struct PrefixSum {
      static inline void update ( T* a ) throw () { *a += *(a-1); PrefixSum < Order-1, T > :: update( a+1 ); }
    };
    
    template < typename T >
    struct PrefixSum < 1,T > {
      static inline void update ( T* a ) throw () { *a += *(a-1); }
    };
    
    template < int P, int N, int Condition = 0 > 
    struct Bpn {
      enum { value = N * ( Bpn < P-1, N-1, (N > P) > :: value - Bpn < P-1, N, (N > P-1) > :: value ) };
    };
    
    template < int P, int N > struct Bpn < P, N, !0 > { enum { value = 0 }; };
    template < int P >        struct Bpn < P, 0,  0 > { enum { value = P ? 0 : 1 }; };
    template < int P >        struct Bpn < P, 1,  0 > { enum { value = P & 1 ? 1 : -1 }; };
    
    template < typename Ta, typename Tb, bool C > struct IfThenElse;
    template < typename Ta, typename Tb > struct IfThenElse < Ta, Tb, true  > { typedef Ta TRes; };
    template < typename Ta, typename Tb > struct IfThenElse < Ta, Tb, false > { typedef Tb TRes; };
    
    template < int K, int I = 1 >
    struct MomentSeries {
      typedef typename IfThenElse < MomentSeries<K,I+1>, MomentSeries<K,K>, (I<K) >::TRes SubT;
      static inline double accumulate ( double const* psum ) throw () {
        return Bpn < K, I > :: value * psum [ I + 1 ] + SubT :: accumulate ( psum );
      }
    };
    
    template < int K >
    struct MomentSeries < K, K > {
      static inline double accumulate ( double const* psum ) throw () {
        return Bpn < K, K > :: value * psum [ K + 1 ];
      }
    };
    
    template < int Order >
    struct MomentLoop {
      static inline void assign ( double *moments, size_t momentStride, double const* psum ) throw() {
        *(moments - momentStride) = MomentSeries < Order-1 > :: accumulate ( psum );
        MomentLoopAssign < Order-1 > :: assign ( moments - momentStride, momentStride, psum ); 
      }
    };
    
    template <>
    struct MomentLoop < 1 > {
      static inline void assign ( double *moments, size_t momentStride, double const* psum ) throw() {
        moments [ 0 ] = MomentSeries < 1, 1 > :: accumulate ( psum );
        *(moments - momentStride) = psum [ 1 ];
      }
    };
    
    /**
     * Function computes a series of geometric moments by prefix summation method:
     * Zhou F., Kornerup P. Computing Moments by Prefix Sums. // VLSI Signal Proc. - 2000. - 25. - P. 5 - 17.
     * @param data is first data elemet address.
     * @param ndataItems is number of data items.
     * @param dataStride is the number of elements between two neighbor data items, 
     *        in case of simple array dataStride is equal to 1.
     * @param moments is address of 0-order moment.
     * @param momentStride is number of elements between two neigbor moment items,
     *        in case of consequtive moments placement, momentStride is equal to 1.
     */
    
    template < int Order, class OutPolicy >
    inline void psmoment ( double const* data, 
                           size_t const  ndataItems,
                           size_t const  dataStride,
                           double*       moments,
                           size_t const  momentStride ) throw() { 
      double psum [ Order+1 ] = { 0 };
      // Initialize prefix sum
      for ( size_t i = ndataItems, j = ndataItems * dataStride; i; ) {
        --i; j -= dataStride; psum [ 0 ] = data [ j ];
        PrefixSum < Order, double > :: update ( psum+1 );
      }
      // convert psum to moment values 
      OutPolicy :: assign ( moments + Order * momentStride, momentStride, psum );
    }

    Вы - тестовая площадка, перед написанием статьи в пфп ;)

    ngry, 12 Мая 2011

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

    +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
    13. 13
    function postUrl(path, params, method) {
    	if ($('#service-form').length > 0) {
    		return false;
    	}
        var formHtml = '<form action="' + path + '" method="' + method + '" style="display:none;" id="service-form">';
        for(var key in params) {
            formHtml += '<input type="hidden" name="' + key + '" value="' + params[key] + '" />';
        }
        formHtml += '</form>';
    
        $("#main").append(formHtml);
        $("#service-form").submit();
    }

    Игра МосВар

    Vasiliy, 12 Мая 2011

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

    +162

    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
    class db {
        //...
        function query($sql) {
            //...
            if ($error_no) {
                display_error($error_no, $error_msg, $sql);
                throw new Exception('Error in query');
                return FALSE;
            }
            return $result;
        }
    
        function display_error($error_no, $error_msg, $sql) {
            //...
            exit;
        }
    
    }

    А я думай, какого ___ оно не перехватывается:).

    Lowezar, 12 Мая 2011

    Комментарии (15)
  8. ActionScript / Говнокод #6641

    −112

    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
    function GetServerAddress( addressId )
    {
        var name = "";
        // fill element
        rs = oConn.Execute( "SELECT * FROM Address WHERE Id="+addressId );
        var step = 0;
        while ( !rs.EOF )
        {
             if ( rs.Fields("Type").Value != 20 ) // отключаем участие названий регионов в формировании адреса
             {
                  if( step>1 )
                  {
                      name += ",";
                  }
    
                  if( step>0 )
                  {
                      name += rs.Fields( "Name" ).Value;
                  }
    
              }
              step++;
              rs = oConn.Execute( "SELECT * FROM AddressName WHERE Id=" + rs.Fields( "AddressName" ).Value );
         }
    
        return name;
    }

    Это ж какие надо иметь мозги, чтобы в одном вайле бегать по разным ресурсам?!

    sdvn, 12 Мая 2011

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

    +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
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    ZeuS
    do
      {
        /*
          Тупые, притупые идусы из MS, не понимают что они тупые притупые. Дело в том, что в MSDN
          написано, что NetUserEnum может работать с уровнями 4, 23, а на практики мы получаем 
          большой индуский ХУЙ!
        */
    
        DWORD readed;
        DWORD total;
        USER_INFO_0 *buf0 = NULL;
        status = CWA(netapi32, NetUserEnum)(NULL, 0, FILTER_NORMAL_ACCOUNT, (LPBYTE *)&buf0, MAX_PREFERRED_LENGTH, &readed, &total, &handle);
    /////////////////////////////////////
    //Непонятно, может ли оно вернуть NULL. Помня фокус индусов с wsprintf, защитимся от этого.
      if(p == NULL)p = path; 
    //////////////////////////////////
    if(iSize == -1)
      {
        //Гении-индусы решили подмениь возрашаемое значение в Vista на -1, в случаи если не хватает
        //места на всю строку, однако буфер заполняется. Ума устаналивать LastError не хватило...
        iSize = _LengthW(pBuf);
      }
      else pBuf[iSize] = 0;
    ///////////////////////////////////
    //Я ибал в рот тупых уродов написавших тупой rfc и тупорлых говнокодеров,
            //Я ставлю листинг на проивзольны порт на все IP сервера, и пашел на хуй софт который не
            //сможет это прочитать. Возможно меня ввел в забулждение FlashFXP 3.6.0. Т.к. в destAddr
            //он отправляет какие то данные сервера. А по rfc, как я понел, там должны быть данные
            //сокс-сервера, где нужно ждать сединения.
            
            //Ищим свободный порт.
            ((SOCKADDR_IN6 *)destAddr)->sin6_port = 0;

    23525f567a2b456a, 12 Мая 2011

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

    +148

    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
    void DayNumbSat (double day, int month, double year, double days) {
         
         int FirstJan, DayNumb; 
         char *Sat;
    
         FirstJan = (long) days%7 - 1;
         
         
         switch ( month ) {
              case 1: DayNumb = day;
              break;
              case 2: DayNumb = 31 + day;
              break;
              case 3: DayNumb = 31 + 28 + day;
              break;
              case 4: DayNumb = 31*2 + 28 + day;
              break;
              case 5: DayNumb = 31*2 + 28 + 30 + day;
              break;
              case 6: DayNumb = 31*3 + 28 + 30 + day;
              break;
              case 7: DayNumb = 31*3 + 28 + 30*2+day;
              break;
              case 8: DayNumb = 31*4 + 28 + 30*2 + day;
              break;
              case 9: DayNumb = 31*5 + 28 + 30*2 + day;
              break;
              case 10: DayNumb = 31*5 + 28 + 30*3 +day;
              break;
              case 11: DayNumb = 31*6 + 28 + 30*3 +day;
              break;
              case 12: DayNumb = 31*7+30*4+28+day;
              break;
         }
    
         printf("\n%d  PASSED SINCE 1ST OF JANUARY\n", DayNumb);

    govnoval, 12 Мая 2011

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