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

    В номинации:
    За время:
  2. 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)
  3. PHP / Говнокод #6563

    +164

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    $totalKrForThisClientCustToUseInBonusClaim = $sumTrans_val + $sumUTrans_val;
    
    // Здесь код...
    
    $sql = "SELECT (".
      $totalKrForThisClientCustToUseInBonusClaim."
    ) summ";
    
    $NoBonus_rs = $m_db->execute($sql);
    $summ = isset($NoBonus_rs[0]['summ']) ? $NoBonus_rs[0]['summ'] : 0;

    Без комментариев.

    Ring, 05 Мая 2011

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

    +164

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if($password===$_POST['password'] && $login===$_POST['login'])
    	{	
    // устанавливаем login & pass	
    	$_SESSION['login']=$_POST['login'];	
    	
    	$_SESSION['password']=$_POST['password'];
    // Перенаправляем в админ панель	
    	Header("Location: config.php");	
    	}
    else { ... }

    NemoReturns, 29 Апреля 2011

    Комментарии (72)
  5. JavaScript / Говнокод #6516

    +164

    1. 1
    <a onclick="javascript:location.href='news_id_42297.html'" href="#block03-1">

    http://www.topnews.ru/ (внизу новости с 11-й по 20-ю)
    А теперь <del>кликните колесиком</del> наведите на это безобразие курсор. Молодцы, теперь отведите.

    ReallyBugMeNot, 29 Апреля 2011

    Комментарии (15)
  6. PHP / Говнокод #6512

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $cur = date('Y-m-d',time());
    $date_arr = explode('-',$cur);
    $year =$date_arr[0];
    $month =$date_arr[1];
    $day =$date_arr[2];

    _tL, 29 Апреля 2011

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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    function __TTT($txt)
    {
    	if (strlen($txt) > 0)
    	{
    		$fff = fopen($_SERVER["DOCUMENT_ROOT"]."/__ttt.txt", "a");
    		fwrite($fff, $txt."\n");
    		fclose($fff);
    	}
    }

    Магическая функция битрикса, видимо, для логирования чего-то, которая нигде не используется)
    Иногда мне правда кажется, что битрикс писали школьники.. :)

    greevex, 25 Апреля 2011

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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    function m($s, $re)
        {
            return preg_match($re, $s);
        }
    // ... чуть пониже ...
                if (!$this->m($caching_level, '/^[012]$/')) {
                    die(__CLASS__ . "::stem_caching() - Legal values are '0','1' or '2'. '$caching_level' is not a legal value");

    telnet, 25 Апреля 2011

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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (is_array($custom_data)) {
    	foreach ($custom_data as $key => $val) {
    		$session[$key] = $val;
    	}
    }

    хитрый план

    DrFreez, 23 Апреля 2011

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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $host = str_replace( "www.", "", getenv( "HTTP_HOST" ) );
    if ( $host != "" )
    {
       exit();
    }

    partizan22, 14 Апреля 2011

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

    +164

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    tr>
                                <td valign="top">
                                  <!--Содержание станици начинается тут-->
    <?
    if ($p)
       include "content/pages.php";
    elseif ($mod)
       include "content/".$mod.".php";
    ?>
                                </td>
                              </tr>

    Так происходит подключение модулей на одном крупном гос.портале Казахстана. $mod передаётся через get подключение происходит без всяких проверок

    NemoReturns, 08 Апреля 2011

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