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

    +175

    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
    function enc($text) {
    
    $bad_symbols =  array('ï', 'î', 'é', 'è', 'ì', 'å', 'í', 'õ', 'Ö', 'Ç',
                          'Â', 'â', 'ó', 'ç', 'ä', 'à', 'Í', 'ò', 'Ð', 'ÿ',
    	        'ñ', 'Ì', 'ë', 'ý', 'ö', 'ã', 'Ñ', 'Ô', 'Ï', 'ü',
    	        'Ã', 'ð', 'æ', 'á', 'À', '¸', 'ù', 'Ê', 'ê', 'Á',
    	         '÷', 'Ý', 'û', 'Ë', 'È', 'Ò', 'ß', 'þ', 'Ä', 'Î',
    	        'Ó', 'Å', 'Æ', 'Û', 'ø', 'ô', '×', '¹', '³', 'Õ', 'Þ', 'Ø');
    					  
    $good_symbols = array('п', 'о', 'й', 'и', 'м', 'е', 'н', 'х', 'Ц', 'З',
                          'В', 'в', 'у', 'з', 'д', 'а', 'Н', 'т', 'Р', 'я',
    	        'с', 'М', 'л', 'э', 'ц', 'г', 'С', 'Ф', 'П', 'ь',
                          'Г', 'р', 'ж', 'б', 'А', 'ё', 'щ', 'К', 'к', 'Б',
    	         'ч', 'Э', 'ы', 'Л', 'И', 'Т', 'Я', 'ю', 'Д', 'О',
    	         'У', 'Е', 'Ж', 'Ы', 'ш', 'ф', 'Ч', '№', 'і', 'Х', 'Ю', 'Ш');
     
    $text_rus = str_replace($bad_symbols, $good_symbols, $text, $count);
    
    				
    // Восстанавливаем японские иероглифы
    $bad_symbols =  array('іх', 'Тф', 'ҐЇ', 'Ґё', 'ҐЯ', '©`', 'Ґµ', 'Ґа', 'ь\\', '¤¦', '¤µ', 'Ґ«', 'Ґу', 'Ґї', 'Ґм', 'Ґй',
                          'Ґ¦', 'ҐЙ', 'Ґ·', 'Ґ°', 'ҐК', 'Ґл', 'Ґк', 'Ґи', 'ЈЁ', 'Ј©', 'ЈЬ', 'ЈЇ', 'Бч', 'РЗ', 'СІ', 'зR',
    	         'ВЇ', 'РД', 'ИЪ', 'Ѕв', 'ҐЄ', 'Ґп', 'Ґі', 'РР', 'ЯM', 'Зъ', 'ҐИ', '¤н', '¤ї', '¤у', '¤А', '±°',
    	        'ЗУ', '‘й', 'к ', 'ҐЬ', 'Ґн', '¤П', '¤д', '‰ф', '¤Я', '¤л', '¤і', '¤И', '¤к');
    					  
    $good_symbols = array('初', '音', 'ク', 'ジ', 'ミ', 'ー', 'サ', 'ム', '黒', 'う', 'さ', 'カ', 'ン', 'タ', 'レ', 'ラ',
                          'ウ', 'ド', 'シ', 'グ', 'ナ', 'ル', 'リ', 'ヨ', '(', ')', '\', '/', '流', '星', '巡', '鏡',
    	        '炉', '心', '融', '解', 'オ', 'ワ', 'コ', '行', '進', '曲', 'ト', 'ろ', 'た', 'ん', 'だ', '卑',
    	        '怯', '戦', '隊', 'ボ', 'ロ', 'は', 'や', '夢', 'み', 'る', 'こ', 'と', 'り');
    
    $text_jap = str_replace($bad_symbols, $good_symbols, $text_rus, $count2);
    
    if ($count > 3)
        return $text_rus;
    elseif ($count2 > 3)
        return $text_jap;
    else return $text;
    }

    Декодер кривых тегов на интернет-радио.
    Написано год назад.
    Я, конечно, знал про iconv, но очень хотелось решить головоломку - имелся тег, который я знал, что значит в верной кодировке. А остальные я не знал, что значат.
    И в итоге, зная некоторые соответствия символов win-1252 и win-1251, стал отгадывать соответствия к остальным :)
    А дальше - высший пилотаж, это даже iconv не брал.
    Японские иероглифы, испорченные хрен знает как. Знал только как расшифровывается имя одного исполнителя.
    Дальше гуглом и методом тыка искал соответствия к остальным иероглифам.

    7ion, 01 Июня 2011

    Комментарии (19)
  2. Java / Говнокод #6806

    +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
    private void listGSNames()
    	{
    		int idMaxLen = 0;
    		int nameMaxLen = 0;
    		for (Entry<Integer, String> e : GameServerTable.getInstance().getServerNames().entrySet())
    		{
    			if (e.getKey().toString().length() > idMaxLen)
    			{
    				idMaxLen = e.getKey().toString().length();
    			}
    			if (e.getValue().length() > nameMaxLen)
    			{
    				nameMaxLen = e.getValue().length();
    			}
    		}
    /* Some Code */
    }

    Отрезок из регистратора игрового сервера Lineage от команды L2jServer.
    e.getKey().toString().length() - Приведение к строке, потом определение строки. Выглядит зрелищно! =)

    Akira, 01 Июня 2011

    Комментарии (4)
  3. Python / Говнокод #6805

    −94

    1. 1
    for smth in filter(None, [something]): do(smth)

    лопата

    wiz, 31 Мая 2011

    Комментарии (8)
  4. Куча / Говнокод #6804

    +131

    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
    /*здесь заданы значения листов x и y соответственно*/
    x: [...] $
    y: [...] $
    ...
    /*и понеслась*/
    xx: [-10] $
    for i in create_list(i,i, 2,length(h)) do
    	xx: append(xx, [i,i]) $
    xx: append(xx, [10]) $
    
    yy: [ first(x) ] $
    for i in create_list(i,i, 2,length(h)) do
    	yy: append(yy, [x[i-1],x[i]]) $
    yy: append(yy, [last(yy)]) $
    
    plot2d( [discrete, xx,yy] ) $

    maxima. рисуем кусочно-заданную функцию О_о

    ilardm, 31 Мая 2011

    Комментарии (2)
  5. Pascal / Говнокод #6803

    +110

    1. 1
    2. 2
    3. 3
    DataModule1.QueryPlayers.Close; 
    DataModule1.QueryPlayers.SQL.Text:='select fp_id, fp_familiya, fp_imya, fp_otchestvo, FP_DATE_ZAKLUCHENIYA_CONTRAKTA, FP_DATE_OKONCHANIYA_CONTRAKTA,FP_OKLAD,fp_amplua,amp_nazvanie from football_player f,amplua a where f.fp_amplua=a.amp_id and f.fp_familiya like "'+ str+'%"'; 
    DataModule1.QueryPlayers.Open;

    Девушка, работа с базой.

    bloodye, 31 Мая 2011

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

    −111

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    stop()
    stage.addEventListener(Event.ENTER_FRAME,qw)
    function qw(e:Event):void{
    if(q.value=="tekst"){
     gotoAndStop(2)
    }
    }

    Event.CHANGE нам не поможет,
    Нам поможет 'enterFrame'

    KirAmp, 31 Мая 2011

    Комментарии (10)
  7. JavaScript / Говнокод #6801

    +162

    1. 1
    Петиция за то, чтобы вернули гуеста

    Подписываемся

    dogmatic, 31 Мая 2011

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

    +77

    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
    ArrayList<BaseEventData> tempList = new ArrayList<BaseEventData>();
    			
    			int to = baseList.size()-1;
    
    			while((to > 0) && (baseList.get(to).getTime() > timeTo))
    				to--;
    			
    			int from = to;
    			
    			while((from > 0) && (baseList.get(from).getTime() >= timeFrom)){
    				tempList.add(baseList.get(from));
    				from--;
    			}
    			
    			mEvents = tempList.toArray(new BaseEventData[]{});

    Часть метода. Метод предназначен для чтения ленты событий. Среди полученной ленты выбираются те, время возникновения которых попадает в заданный период. События изначально отсортированы по этому времени, от первого к последнему. то-есть последний элемент - последнее событие.

    kartanis, 31 Мая 2011

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

    +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
    int main(argc,argv)
    int argc;
    char *argv[];
    {
    int raw=0,httpcont=0;
    int i,ilatex=0,ititle=1;
    char *spoint=0;
    char ttver[]=TTH_VERSION;
    char ttname[20];
    ...
        strcpy(ttname,"Tt");
        strcat(ttname,TTH_NAME);
        strncpy(spoint-10-strlen(ttname),ttname,strlen(ttname));

    Понадобился мне конвертёр TeX в HTML.
    Скачал (http://hutchinson.belmont.ma.us/tth/), всё работает, но оказалось, что он не умеет работать с командой \begin{cases}
    Ну я решил его подправить, благо исходник открыт.
    Открыл я исходник и... решил написать с нуля свой.

    ПС Посоны, что делает 13я строчка?
    ППС Си - говно.

    TarasB, 31 Мая 2011

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

    +172

    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
    <?php
    
    //...
    
    if(version_compare(phpversion(), '5.0') < 0) {
            insert_charset_header();
            require_once('phpversionfail.php');
            die();
    }
    
    require_once('include/utils/utils.php');
    
    if (version_compare(phpversion(), '5.0') < 0) {
        eval('
        function clone($object) {
          return $object;
        }
        ');
      }
    
    //....
    
    ?>

    Код из vTiger CRM. Индусы как обычно.

    mr.The, 31 Мая 2011

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