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

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

    +76

    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
    public class Xorer {
        private static long SHIFR= 71180519;
        private Xorer() {
        }
    
        /**
         * ��������� �������� value XOR shifr
         * @param value ������� �������� �������� � ��������� �������
         * @return ��������� ��� �������� �������� � ��������� �������
         */
        public static synchronized String executeString(String value){
            String res=null;
            long code=0;
            try{
                  code=Long.parseLong(value);
            } catch(Exception e){
                e.printStackTrace();
            }
            res=execute(code);
            return res;
        }
    
        /**
         * ��������� �������� value XOR shifr
         * @param code ������� �������� �������� � ������� long
         * @return ��������� ��� �������� �������� � ��������� �������
        */
        public static synchronized String execute(long code){
            String res=null;
            if(code>0){
                long newvalue= code ^ SHIFR;
                res=""+newvalue;
            }
            return res;
        }
    }

    Вот вам ещё еда.

    nikelin, 08 Декабря 2011

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

    −111

    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
    UPDATE  zayavlenie_tmp
        SET error    = 1,
            errorcod = 4
        FROM   zayavlenie_tmp
        WHERE  zayavlenie_tmp.error IS NULL
                    AND (rtrim(fam) = ''
                         OR LEN(ltrim(rtrim(fam))) < 2
                         OR fam LIKE '%0%'
                         OR fam LIKE '%1%'
                         OR fam LIKE '%2%'
                         OR fam LIKE '%3%'
                         OR fam LIKE '%4%'
                         OR fam LIKE '%5%'
                         OR fam LIKE '%6%'
                         OR fam LIKE '%7%'
                         OR fam LIKE '%8%'
                         OR fam LIKE '%9%'
    
    UPDATE  zayavlenie_tmp
        SET error    = 1,
            errorcod = 5
         FROM   zayavlenie_tmp
          WHERE  zayavlenie_tmp.error IS NULL
                    AND (rtrim(im) = ''
                         OR LEN(ltrim(rtrim(im))) < 2
                         OR im LIKE '%0%'
                         OR im LIKE '%1%'
                         OR im LIKE '%2%'
                         OR im LIKE '%3%'
                         OR im LIKE '%4%'
                         OR im LIKE '%5%'
                         OR im LIKE '%6%'
                         OR im LIKE '%7%'
                         OR im LIKE '%8%'
                         OR im LIKE '%9%'

    При импорте поля проверяются на соответствие (около 30 разнобразных правил). Хранимику писал мой начальнег :) Выкладываю УЖЕ немного исправленный для удобопонимания вариант, в исходнике таблицы еще зачем-то джойнились сами на себя. Всего в хранимике 50 (!!!) таких запросов, и каждый не менее эпичный )) Хотел исправить это хозяйство одним более-менее цивильным запросом, но где-то на половине у меня руки опустились

    spray07, 21 Ноября 2011

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

    +150

    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
    <?php
    class sql extends sleshs{
    	//Выборка из баззы
    	//Напоминалочка
    	//$select =Што ищим \\//$from= Где ищим\\//$where=Где именно\\//$param = Допалнительные параметры
    	function select($select,$from,$where=NULL,$param=NULL){
    		$myrow = mysql_query("SELECT ".$select." FROM ".$from." ".$where." ".$param."");
    		if(!(mysql_error())){
    			if(mysql_num_rows($myrow)){
    				return $myrow;
    				}else{return FALSE;}}else{return FALSE;}
    		}
    		
    		
    	//Запись в базу
    	function update($from,$array,$where,$param=NULL){
    		//Формируем запрос и слэшируем
    		for($i=0,$col=count($array)-1;$i<=$col;$i++){
    			$zap .=",`".key($array[$i])."`='".$this->slesh($array[$i][key($array[$i])],$array[$i]['slesh'])."'";
    			}
    		//Удоляем лишнию запятую
    		$zap{0}=' ';
    		//Отпровляем запрос
    		if(mysql_query("UPDATE `".$from."` SET ".$zap." ".$where." ".$param."")){return true;}else{return false;}
    		}
    		
    		
    	//Добавление записи в бд	
    	function insert($from,$array){
    		//Формируем запрос
    		for($i=0,$col=count($array)-1;$i<=$col;$i++){
    			$into .=",`".key($array[$i])."`";
    			$value .=",'".$this->slesh($array[$i][key($array[$i])],$array[$i]['slesh'])."'";
    			
    		}
    		$into{0}=' ';
    		$value{0}=' ';
    		if(mysql_query("INSERT INTO `".$from."` (".$into.") VALUE (".$value.")")){echo'good';}else{echo mysql_query();}
    		}
    	
    	//Удаление
    	function delete($from,$where){return mysql_query("DELETE FROM `".$from."` ".$where."");}
    	}
    ?>

    oop mysql

    lans8097, 13 Ноября 2011

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

    +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
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    // Функция, добавляемая в цепочку низкоуровневой обработки клавиатуры с помощью SetWindowsHookEx.
    public static int LowLevelKeyboardProc( ... )
    {
    	bool fHandled = false;
    
    	// ...
    	// Далее поиск всех комбинаций, которые "запрещены" в программе,
    	// например, Win+R, Alt+Tab, Alt+F4 и т.д.; если комбинация перехвачена, то fHandled = true.
    
    	if ( fHandled )
    	{
    		KillProcess();
    		return 1;
    	}
    	else
    	{
    		return CallNextHookEx( ... );
    	}
    }
    
    static void KillProcess()					
    {
    	foreach (Process process in Process.GetProcessesByName("regedit"))
     		process.Kill();		// Если запущен редактор реестра закрываем его
    	foreach (Process process in Process.GetProcessesByName("taskmgr"))
    		process.Kill();		// Убиваем диспетчер задач если запущен
    }

    Шелл, типа explorer.exe. Ну-ну...

    ivan-petrov, 07 Ноября 2011

    Комментарии (24)
  6. 1C / Говнокод #8435

    −89

    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
    // Функция для склонения одного слова!!!
    // z1 - само слово
    // z2 - номер падежа
    // z3 - пол
    // z4 - 1-склонять как фамилию, 2-имя, 3-отчество
    Функция ПадежС(z1,Знач z2=2,Знач z3="*",z4=0) Экспорт
    	z5=Найти(z1,"-"); z6=?(z5=0,"","-"+ПадежС(Сред(z1,z5+1,СтрДлина(z1)-z5+1),z2,z3,z4)); z1=НРег(?(z5=0,z1,Лев(z1,z5-1))); z7=Прав(z1,3);z8=Прав(z7,2);z9=Прав(z8,1);
    	z5=СтрДлина(z1); za=Найти("ая ия ел ок яц ий па да ца ша ба та га ка",z8); zb=Найти("аеёийоуэюяжнгхкчшщ",Лев(z7,1)); zc=Макс(z2,-z2); zd=?(za=4,5,Найти("айяь",z9));
    	zd=?((zc=1)или(z9=".")или((z4=2)и(Найти("оиеу"+?(z3="ч","","бвгджзклмнпрстфхцчшщъ"),z9)>0))или((z4=1)и(Найти("мия мяэ лия кия жая лея",z7)>0)),9,?((zd=4)и(z3="ч"),2,?(z4=1,?(Найти("оеиую",z9)+Найти("их ых аа еа ёа иа оа уа ыа эа юа яа",z8)>0,9,?(z3<>"ч",?(za=1,7,?(z9="а",?(za>18,1,6),9)),?(((Найти("ой ый",z8)>0)и(z5>4)и(Прав(z1,4)<>"опой"))или((zb>10)и(za=16)),8,zd))),zd)));
    	ze=Найти("лец вей бей дец пец мец нец рец вец аец иец ыец бер",z7);
    	zf=?((zd=8)и(zc<>5),?((zb>15)или(Найти("жий ний",z7)>0),"е","о"),?(z1="лев","ьв",?((Найти("аеёийоуэюя",Сред(z1,z5-3 ,1))=0)и((zb>11)или(zb=0))и(ze<>45),"",?(za=7,"л",?(za=10,"к",?(za=13,"йц",?(ze=0,"",?(ze<12,"ь"+?(ze=1,"ц",""),?(ze<37,"ц",?(ze<49,"йц","р"))))))))));
    	zf=?((zd=9)или((z4=3)и(z3="ы")),z1,Лев(z1,z5-?((zd>6)или(zf<>""),2,?(zd>0,1,0)))+zf+СокрП(Сред("а у а "+Сред("оыые",Найти("внч",z9)+1,1)+"ме "+?(Найти("гжкхш",Лев(z8,1))>0,"и","ы")+" е у ойе я ю я ем"+?(za=16,"и","е")+" и е ю ейе и и ь ьюи и и ю ейи ойойу ойойойойуюойойгомуго"+?((zf="е")или(za=16)или((zb>12)и(zb<16)),"и","ы")+"мм",10*zd+2*zc-3,2)));
    Возврат ?(""=z1,"",?(z4>0,ВРег(Лев(zf,1))+?((z2<0)и(z4>1),".",Сред(zf,2)),zf)+z6);
    КонецФункции

    шедевр, кстати!

    Cthulhu, 06 Ноября 2011

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

    +167

    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
    <?foreach($arResult["ITEMS"] as $arItem):?>
    	<p class="news-item" id="<?=$this->GetEditAreaId($arItem['ID']);?>">
    	<?if($arParams["DISPLAY_PICTURE"]!="N" && is_array($arItem["PREVIEW_PICTURE"])):?>
    		<?if(!$arParams["HIDE_LINK_WHEN_NO_DETAIL"] || ($arItem["DETAIL_TEXT"] && $arResult["USER_HAVE_ACCESS"])):?>
    			<p class="align-center"><a href="<?=$arItem["DETAIL_PAGE_URL"]?>"><img class="preview_picture" border="0" src="<?=$arItem["PREVIEW_PICTURE"]["SRC"]?>" alt="<?=$arItem["NAME"]?>"  height="252px" width="189px"  title="<?=$arItem["NAME"]?>" style="float:left" /></a></p>
    		<?else:?>
    			<p class="align-center"><img class="preview_picture" border="0" src="<?=$arItem["PREVIEW_PICTURE"]["SRC"]?>" height="252px" width="189px"  alt="<?=$arItem["NAME"]?>" title="<?=$arItem["NAME"]?>" style="float:left" /></p>
    		<?endif;?>
    	<?endif?>
    		<?if($arParams["DISPLAY_DATE"]!="N" && $arItem["DISPLAY_ACTIVE_FROM"]):?>
    			<span class="news-date-time"><?echo $arItem["DISPLAY_ACTIVE_FROM"]?></span>
    		<?endif?>
    		<?if($arParams["DISPLAY_NAME"]!="N" && $arItem["NAME"]):?>
    			<?if(!$arParams["HIDE_LINK_WHEN_NO_DETAIL"] || ($arItem["DETAIL_TEXT"] && $arResult["USER_HAVE_ACCESS"])):?>
    				<a href="<?echo $arItem["DETAIL_PAGE_URL"]?>"><b><?echo $arItem["NAME"]?></b></a><br />
    			<?else:?>
    			<?endif;?>
    		<?endif;?>
    		<?if($arParams["DISPLAY_PREVIEW_TEXT"]!="N" && $arItem["PREVIEW_TEXT"]):?>
    			<?echo $arItem["PREVIEW_TEXT"];?>
    		<?endif;?>
    		<?if($arParams["DISPLAY_PICTURE"]!="N" && is_array($arItem["PREVIEW_PICTURE"])):?>
    		<?endif?>
    		<?foreach($arItem["FIELDS"] as $code=>$value):?>
    			<p class="Parad"><?=GetMessage("IBLOCK_FIELD_".$code)?>:&nbsp;<?=$value;?></p>
    <?endforeach;$a=0;?>
    
    		<?foreach($arItem["DISPLAY_PROPERTIES"] as $pid=>$arProperty):?>
    			<?$b=0;?>
    		<?if(is_array($arProperty["DISPLAY_VALUE"])):?>
    	<?else:?>
    		<? if($a==7) { if($b!=1){ ?>
    			<? $a=$a+1;$b=1;} }?>
    			<? if($a==0) { if($b!=1){ $s=$arProperty["DISPLAY_VALUE"];?>  
    					<?if($sity_shop!=$s) 
    					{?>
    						<?=$arProperty["DISPLAY_VALUE"]; 
    						$i=$i+1;
    						$sity_shop = $s;?><br>
    					<?}?>  
    			<? $a=$a+1;$b=1;} }?>
    			<?if($a==2) { if($arItem["PROPERTIES"]["NEW"]["VALUE"]=='Y') {?>
    								<a href=""><img src="/bitrix/templates/parad/img/other/new-salon.png"/></a>
    			<? $a=$a+1;$b=1; }?> </p> <? }?>
    			<?if($a==5) { if($b!=1){ if($arItem["PROPERTIES"]["MASTERCARD"]["VALUE"]=='Y') {?>
    			<? }}$a=$a+1;$b=1; } ?>
    			<?if($a==6) { if($b!=1){ if($arItem["PROPERTIES"]["VISA"]["VALUE"]=='Y') {?>
    							<? }?>
    			<? }$a=$a+1;$b=1; } ?>
    			<?if($a==1) { if($b!=1){ ?>
    						<a href="<?echo $arItem['DETAIL_PAGE_URL'];?>"><?=$arProperty["DISPLAY_VALUE"];?></a>
    			<? $a=$a+1;$b=1;} }?>
    			<?if($a!=2) { if($b!=1){ ?>
    			<? $a=$a+1;$b=1;} }?>
    			<?endif?>
    	<?endforeach;?>
    <?endforeach;?>

    Шаблончик для битрикса, вторая половина доставляет своей магией чисел.

    hdkeeper, 28 Октября 2011

    Комментарии (24)
  8. Java / Говнокод #8291

    +70

    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
    for (AllResponseCache actionResponse : allResponses) {
                    if (null != actionResponse.getResponseStatus() && actionResponse.getResponseStatus().length() > 0) {
                        for (ResponseSubjectCache subj : actionResponse.getSubjects()) {
                            // find needed element
                            if (subj.getClaims() != null) {
                                for (ClaimCache claimCache : subj.getClaims()) {
                                    Seller seller = getSellerByPersonMatched(pool, claimCache);
                                    if (seller != null) {
                                        if (mapToSyncronize.get(seller) == null) {
                                            mapToSyncronize.put((SellerrEntity) seller, new LinkedList<ReportResponseCache>());
                                        }
                                        mapToSyncronize.get(seller).add(actionResponse);
                                    }
                                }
                            }
                        }
                    }
                }

    Индусы и "for-if"-ы.

    Я уж думал будет хронология как в России с "президентами" - "лысый, волосатый, лысый, волосатый" и так далее.
    А тут "for, if, for, if" но в конце всё-таки 2 иф-а!

    Dimedrol, 25 Октября 2011

    Комментарии (24)
  9. Куча / Говнокод #8285

    +122

    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
    <html>
    <head>  <title> PROEKT</title> </head>
    <body>
            <body background="images/фон.JPeG" TEXT="crimson">
            <h1 align="center">LIVE IN MUSIC</H1>
            <br><img src="images/music.gif"><img src="images/music.gif">
                   <br><form action="avtor.php" method="get">
                   Логин:  <input name="login" type="text">
                   Пароль: <input name="pass" type="text">
                   <a href="indexator.html">Войти</a>
                   </form>
          
            <br><img src="images/Lights.gif"><img src="images/Lights.gif"><img src="images/Lights.gif"><img src="images/Lights.gif"><img src="images/Lights.gif">
    
    </body>
    </html>

    <br><img src="images/Lights.gif"><img src="images/Lights.gif"><img src="images/Lights.gif"><img src="images/Lights.gif"><img src="images/Lights.gif">

    qwe, 24 Октября 2011

    Комментарии (24)
  10. C++ / Говнокод #8259

    +1003

    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
    #include <iostream>
    #include <math.h>
    using namespace std;
    long long h[104680];
    int main(){
        int wr,a2,a3,a5,a7,a11,a13,a17,a19,a23,a29,a31,a37,i,t;
        long long p,u,f1,c1,e,k,n,g,c,f,b2,b3,b5,b7,b11,b13,b17,b19,b23,b29,b31,b37,j;
    
        for (i=1;i<=104000;i++)h[i]=1000000000000000011;
        for (a2=0;a2<=8;a2++){
            b2=powf(2,a2);
            for (a3=0;a3<=4;a3++){
                if (a2<a3)break;
                b3=b2*powf(3,a3);
                for (a5=0;a5<=3;a5++){
                    if (a2<a5)break;
                    b5=b3*powf(5,a5);
                    for (a7=0;a7<=2;a7++){
                        if (a2<a7)break;
                        b7=b5*powf(7,a7);
                        for (a11=0;a11<=1;a11++){
                            if (a2<a11)break;
                            b11=b7*powf(11,a11);
                            for (a13=0;a13<=1;a13++){
                                if (a2<a13)break;
                                b13=b11*powf(13,a13);
                                for (a17=0;a17<=1;a17++){
                                    if (a2<a17)break;
                                    b17=b13*powf(17,a17);
                                    for (a19=0;a19<=1;a19++){
                                        if (a2<a19)break;
                                        b19=b17*powf(19,a19);
                                        for (a23=0;a23<=1;a23++){
                                            if (a2<a23)break;
                                            b23=b19*powf(23,a23);
                                            for (a29=0;a29<=1;a29++){
                                                if (a2<a29)break;
                                                b29=b23*powf(29,a29);
                                                for (a31=0;a31<=1;a31++){
                                                    if (a2<a31)break;
                                                    b31=b29*powf(31,a31);
                                                    for (a37=0;a37<=1;a37++){
                                                        k=b31*powf(37,a37);
    
                                                        g=(a2+1)*(a3+1)*(a5+1)*(a7+1)*(a11+1)*(a13+1);
                                                        g=g*(a17+1)*(a19+1)*(a23+1)*(a29+1)*(a31+1)*(a37+1);
                                                        if (g<=103680){
                                                            if ((0<k)&&(k<h[g])){
                                                                h[g]=k;
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        cin >> t;
        for (i=1;i<=t;i++){
            cin >> n;
            f1=0;c1=0;
            for (j=1;j<=103680;j++){
                if (h[j]<=n){
                    f1=h[j];
                    c1=j;
                }
            }
            cout << f1 << " " << c1 << endl;
        }
        cin >> i;
        return 0;
    }

    отсюда: http://acm.timus.ru/forum/thread.aspx?id=26703&upd=634473973997426 601
    типа решение одной олимпиадной задачки на теорию чисел
    типа неверное (что неудивительно)
    по ссылке можно увидеть другое не менее монструозное решение, которое проходит чуть больше тестов...

    rip, 21 Октября 2011

    Комментарии (24)
  11. Си / Говнокод #8158

    +104

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    if (!fragment || !texture)
      {
        return (1); /* Валидность параметров не пройдена. Дальнейшие действия бесмыслены */
      }
      else
      {
        /* Ничего не делать*/
      }

    Эпичный комментарий, найденный в коде

    x0rb0t, 11 Октября 2011

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