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

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

    +146

    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
    // vba-c.h
    #include <stdio.h>
    #include <conio.h>
    
    #ifndef VBAC
    #   define VBAC
    #   define Sub void
    #   define EndSub }
    #   define main main() {
    #   define Dim __int32
    #   define As
    #   define Integer ;
    #   define Print( a ) printf( "%i\n", a );
    #   define Wait getch();
    #endif
    
    //main.c
    #include "vba-c.h"
    
    Sub main
        Dim a As Integer
        Dim b As Integer
        Dim c As Integer
        Dim d As Integer
        Dim mb, mc As Integer
    
        a = 10;
        b = 25;
        c = 34;
        d = 34;
        mb = 0x00000002;
        mc = 0x00000030;
    
        b = b - 1;
        c = c - 1;
        a = a + b + c;
        a = a / 3;
        b = b / 4;
        a = a - 1;
        b = b + 1;
        c = c - a + b;
        d = ( b & mb ) & ( c & mc );
    
        Print( a )
        Print( b )
        Print( c )
        Print( d )
        Wait
    EndSub

    После полугода изучения VBA, привыкание к хорошим, годным языкам, как Си очень проблематично. Что и порождает такие вот костыли...

    DarkWolf, 02 Марта 2011

    Комментарии (6)
  3. SQL / Говнокод #5849

    −863

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    ...........
    UNION ALL
    (SELECT CONCAT("Помещене: ", rm_pomeshenie.nazvanie, ". Этаж: ", rm_etaj.nomer, ". Комната: ", rm_komnata.nazvanie, ". Раб. место: ", rm_rab_mesto.nazvanie, ". Сист. блок: ", sb_tipi_sist_blokov.nazvanie) AS raspolojenie, u_tip_oborudovaniya.id AS tip_id, u_tip_oborudovaniya.nazvanie AS tip_nazvanie, u_modeli_oborudovaniya.id AS model_id, CONCAT(u_modeli_oborudovaniya.nazvanie, " ", u_modeli_oborudovaniya.parametri) AS model_nazvanie, u_ustroystva.id AS ustr_id, u_ustroystva.seriyniy_nomer AS ustr_seriya, u_ustroystva.dop_svedeniya AS ustr_dop_svedeniya FROM rm_pomeshenie, rm_etaj, rm_komnata, rm_rab_mesto, sb_tipi_sist_blokov, sb_sistemnie_bloki, u_tip_oborudovaniya, u_modeli_oborudovaniya, u_ustroystva WHERE (rm_pomeshenie.id = rm_etaj.id_pomesheniya) AND (rm_etaj.id = rm_komnata.id_etaja) AND (rm_komnata.id = rm_rab_mesto.id_komnati) AND (sb_sistemnie_bloki.id_v_tablice_naznacheniya = rm_rab_mesto.id) AND (sb_sistemnie_bloki.id_tipa = sb_tipi_sist_blokov.id) AND (sb_sistemnie_bloki.imya_tablici_naznacheniya="rm_rab_mesto") AND (u_ustroystva.id_v_tablice_naznacheniya = sb_sistemnie_bloki.id) AND (u_tip_oborudovaniya.id = u_modeli_oborudovaniya.id_tipa_oborudovaniya) AND (u_modeli_oborudovaniya.id = u_ustroystva.id_modeli) AND (u_ustroystva.imya_tablici_naznacheniya = "sb_sistemnie_bloki") ORDER BY tip_nazvanie, model_nazvanie)
    UNION ALL
    ...........

    Выборка устройств. Таких блоков шесть штук и все "склеены" через UNION ALL.
    Наговнокодил от души ))

    nikitasnv, 02 Марта 2011

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

    −183

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    CREATE TABLE `log_event` (
      `id` bigint(20) NOT NULL auto_increment,
      `logtime` datetime default NULL,
      `etype` text,
      `module` text,
      `edata` text,
      `session` text,
      PRIMARY KEY  (`id`),
      UNIQUE KEY `id` (`id`),
      KEY `id_2` (`id`)
    )

    чтобы наверняка

    elw00d, 01 Марта 2011

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

    +156

    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
    <?
    function FindTag($Tag,$Page,$Offset=0) // Ищет тег $Tag в странице $Page от символа с номером $Offset
    {
    	$Tag=strtoupper($Tag);
    	$Page=strtoupper($Page);
    	$Pos=array(0,0,0,0);
    	$Pos[0]=StrPos($Page,'<'.$Tag,$Offset);
    	
    	if ($Pos[0]<$Offset) {return False;}
    	
    	if ((Empty($Pos[0])==True)and(SubStr($Page,0,StrLen('<'.$Tag))!='<'.$Tag)) {return False;}
    	$Pos[1]=StrPos($Page,'>',$Pos[0]);
    	
    	if (Empty($Pos[1])==False) {$Pos[1]=$Pos[1]+1;} else {return False;}
    	$Pos[2]=StrPos($Page,'</'.$Tag.'>',$Pos[1]);
    	$Pos[3]=$Pos[2]+StrLen('</'.$Tag.'>');
    	if ((SubStr($Page,$Pos[0]+StrLen('<'.$Tag),1)!=' ')and(SubStr($Page,$Pos[0]+StrLen('<'.$Tag),1)!='>')) {$Pos=FindTag($Tag,$Page,$Pos[1]);}
    	if ((Empty($Pos[1])==False)and($Pos[0]<$Pos[1])) {return $Pos;} else {return False;}
    }
    ?>

    Вот такой пример поиска тегов я нашел по поисковику, автор этих строк явно не знаком с регулярными выражениями...

    Android991, 01 Марта 2011

    Комментарии (6)
  6. ActionScript / Говнокод #5828

    −99

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    public function addItem(obj):void 
    {
    	if(obj is DisplayObject)
    	{
    		objectArray.push(obj);
    	}
    	else
    	{
    		throw new Error("Cannot add item: " + obj + " - item must be a Display Object.");
    	}
    }

    из http://www.coreyoneil.com/Flash/CDK/

    makc3d, 28 Февраля 2011

    Комментарии (6)
  7. ActionScript / Говнокод #5808

    −95

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    switch(cbChanges.selectedIndex)
    {
         case 1:
                changes = CHANGES_MODIFIED_STATUS;
                break;
         case 1:
                changes = CHANGES_JOINERS_STATUS;
                break;
         case 1:
                changes = CHANGES_LEAVERS_STATUS;
                break;
    }

    Epic Fail!

    dimas_art, 25 Февраля 2011

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

    +177

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if(msg == "" || msg == "{}"){
    	// странный баг, форма очищается, но не прячется
    	return;
    	$("#variants_div").html('');
    	$("variants_div").hide();
    }

    Даже Джумла первая была радостным кодом по сравнению с этим.

    Shock, 24 Февраля 2011

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

    +171

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if($nav_url=="blog.php")
    {
    $ahaha='2';
    eval('$code["$elementtype"] .= "' . fetch_template('navbar_link') . '";');
    $ahaha='';
    }
    else
    {
    eval('$code["$elementtype"] .= "' . fetch_template('navbar_link') . '";');
    }

    Ахаха!

    symbix, 23 Февраля 2011

    Комментарии (6)
  10. ActionScript / Говнокод #5783

    −91

    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
     *  The exponent used in the easer function for the main part of the throw animation.
     *  NOTE: if you change this, you need to re-differentiate the easer
     *  function and use the resulting derivative calculation in createThrowMotionPath. 
     */
    private static const THROW_CURVE_EXPONENT:Number = 3.0;
    
    ...
    
    // Set the velocity for the next loop iteration.  Make sure it matches the actual velocity in effect when the
    // throw reaches the end of the list.
    //
    // The easer function we use for the throw is 1-((1-x)^3), the derivative of which is 3*x^2-6*x+3.
    // (I used http://www.numberempire.com/derivatives.php to differentiate the easer function).
    // Since the slope of a curve function at any point x (i.e. f(x)) is the value of the derivative at x (i.e. f'(x)),
    // we can use this to determine the velocity of the throw at the point it reached the beginning of the bounce.
    var x:Number = partialTime / effectTime;
    var y:Number = 3 * Math.pow(x, 2) - 6 * x + 3;

    Flex 4.5 Hero.
    Благо на работу кода это не сказывается, но всё-таки...

    Разработчикам: Вообще класс и непосредственно алгоритм touch/kinetic скролла там сделан отвратительно, но с некоторыми весьма хорошими фишками (отпределение скорости, например). Советую вам покопаться.

    fljot, 23 Февраля 2011

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

    +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
    function export_global_value($begin_name,$type='POST'){
    if($type=='POST')$get_array=$_POST;
    else if($type=='GET')$get_array=$_GET;
    else if($type=='FILES')$get_array=$_FILES;
    else if($type=='SESSION')$get_array=$_SESSION;
    else if($type=='COOKIE')$get_array=$_COOKIE;
    else if($type=='REQUEST')$get_array=$_REQUEST;
    else $get_array=$_POST;
    
    $name_get=array_keys($get_array);
    $len=strlen($begin_name);
    $result_array=array();
    for ($i=0;$i<=count($get_array);$i++){
    $text_key=$name_get[$i];
    if($begin_name==substr($text_key,0,$len)){
    array_push($result_array,$text_key);
    }
    }
    return $result_array;
    
    }

    Бля.

    7ion, 23 Февраля 2011

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