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

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

    +67

    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
    package bytestring;
    
    public class Main {
    
        public static void main(String[] args) {
            String source = new String("A ya sdelal etu hren s perevorotom stroki s ispolzovaniem bayta");
            byte bytes[] = source.getBytes();
    
            bytes = reverse(bytes);
    
            String destination = new String(bytes);
            System.out.println(destination);
        }
    
        private static void switchBytes(byte[] array, int a, int b) {
            byte t = array[a];
            array[a] = array[b];
            array[b] = t;
        }
    
        public static byte[] reverse(byte[] bytes) {
            int i, j;
            int first, last;
            int length = bytes.length;
    
            //Переворачиваем всю строку
            for(i = 0; i < length / 2; i++)
                switchBytes(bytes, i, length - i - 1);
    
            //Переворачиваем каждое слово строки
            first = 0;
            for(i = 1; i <= length; i++)
                if(i == length || bytes[i] == ' ') {
                    last = i - 1;
                    for(j = first; j <= first + (last - first) / 2; j++)
                        switchBytes(bytes, j, first + last - j);
                    first = i + 1;
                }
            
            return bytes;
        }
    }

    hedgecrab, 28 Ноября 2010

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

    +171

    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
    if(isset($_GET['menu']))
     {
      if(isset($_GET['id']))
      {
       if (!preg_match("|^[\d]+$|", $_GET['id'])) {header("Location: 405.php");}
       $id = $_GET['id'];
       if($id = 1){include("blocks/info.php"); exit();}
       elseif($id = 2){include("blocks/resyrs.php"); exit();}
       elseif($id = 3){include("blocks/nayka.php"); exit();}
       elseif($id = 4){include("blocks/teachers.php"); exit();}
       elseif($id = 5){include("blocks/ycheba.php"); exit();}
       elseif($id = 6){include("blocks/deti.php"); exit();}
       elseif($id = 7){include("blocks/pobedy.php"); exit();}
       elseif($id = 8){include("blocks/online.php"); exit();}
       elseif($id = 9){include("blocks/gostevay.php"); exit();}
       elseif($id = 10){include("blocks/blog.php"); exit();}
       elseif($id = "") {header("Location: 404.php");}
       else {header("Location: 404.php");}
     }
     else {header("Location: 404.php");}
    }

    Так... на закуску.

    Uchkuma, 25 Ноября 2010

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

    +84

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    try {
                    if (field[i][j + 1] == 0) {
                        field[i][j + 1] = 2;
                        fifo.add(new Cell(i, j + 1));
                    }
                } catch (ArrayIndexOutOfBoundsException ignored) {
                }

    Плевать на то что будет стучаться к несуществующему элементу массива, заигнорим и все!

    dexatot, 23 Ноября 2010

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

    +145

    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 check_operation_t extends operation_group_t
    {
    	protected function _process_operation ()
    	{
    		// TODO : Проверить приход на счет?
    
    		// TTTTTTTT    OOOO    DDDDDD       OOOO
    		//    TT      OO  OO   DD   DD     OO  OO
    		//    TT     OO    OO  DD    DD   OO    OO
    		//    TT     OO    OO  DD    DD   OO    OO
    		//    TT     OO    OO  DD    DD   OO    OO
    		//    TT     OO    OO  DD    DD   OO    OO
    		//    TT      OO  OO   DD   DD     OO  OO
    		//    TT       OOOO    DDDDDD       OOOO
    
    		return true;
    	}
    }

    UncleRus, 22 Ноября 2010

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

    +118

    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
    static Func<object, object> get;
    
    static void Add(object id, object data)
    {
        if (get == null)
        {
            get = i =>
            {
                if (i.Equals(id)) return data;
                else return null;
            };
        }
        else
        {
            var _ = get;
            get = i =>
            {
                if (i.Equals(id)) return data;
                else return _(i);
            };
        }
    }

    psina-from-ua, 21 Ноября 2010

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

    +154

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    for ($i = 0; $i < count($_FILES['att']['name']); $i++) {
      if (copy($_FILES['att']['tmp_name'][$i], "files/".$_FILES['att']['name'][$i])) {
        unlink($_FILES['att']['tmp_name'][$i]);
        chmod("files/".$_FILES['att']['name'][$i], 0644);
      }
    }

    Из той же гостевухи как и кусок примера в http://www.govnokod.ru/4660.
    Мультизагрузка файлов на сервер. Естественно, тоже пришлось до
    ума доводить.

    dwinner, 18 Ноября 2010

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

    +159

    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
    <?php
    //debug($item[$modelname]);
    if($item[$modelname]['has_rooms_furniture']){
            __('has_rooms_furniture');
            
    } else {
        echo 'без ';
        __('has_rooms_furniture');
    }
    echo'<br>';
    if($item[$modelname]['has_kitchen_furniture']){
            __('has_kitchen_furniture');
            
    }
    else {
        echo 'без ';
        __('has_kitchen_furniture');
    }
    echo'<br>';
    if($item[$modelname]['has_phone']){
            __('has_phone');
    }else {
        echo 'без ';
        __('has_phone');
    }
    echo'<br>';
    if($item[$modelname]['has_tv']){
            __('has_tv');
            echo'<br>';
    }
    if($item[$modelname]['has_fridge']){
            __('has_fridge');
            echo'<br>';
    }
    if($item[$modelname]['has_washer']){
            __('has_washer');
            echo'<br>';
    }
    if($item[$modelname]['has_balcon']){
            __('has_washer');
            echo'<br>';
    }
    if($item[$modelname]['may_children']){
            __('may_children');
            echo'<br>';
    }
    if($item[$modelname]['may_animals']){
            __('may_animals');
            echo'<br>';
    }
    echo " ";
    ?>

    Код из проекта на CakePHP
    __() - функция для локализации термина

    Shiz89, 17 Ноября 2010

    Комментарии (8)
  9. SQL / Говнокод #4637

    −125

    1. 1
    SELECT rr.hit, count(rr.hit) AS cnt FROM `r_hits` AS rr WHERE rr.hit IN (SELECT DISTINCT rh.hit FROM `r_hits`AS rh) GROUP BY rr.hit;

    Вот что бывает, когда голова не работает в обед в понедельник.
    А делов-то всего на select hit, COUNT(id) from r_hit group by hit было...

    azzz, 15 Ноября 2010

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

    +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
    char* setw_c(int width, char* str, const char align){
        width = width - strlen(str) / 2; 
    
        if (align == 'l'){
            std::cout << str;
            if (width > 0)
                for (int i = 0; i < width - 1; i++)
                    std::cout << " ";
    		return " ";
        } else {
            if (width > 0)
                for (int i = 0; i < width; i++)
                    std::cout << " ";
    		return str;
        }
    }

    вот так коряво я решил проблему с setw(), кириллицей и utf-8.
    strlen() - чуть ли не единственная функция из cstring, более-менее нормально работающая с кириллицей в utf-8, да и то возвращает не реальную длину, а в два раза бОльшую, т.к. в utf-8 символ кириллицы занимает 2 байта, вместо одного, чего эта функция не учитывает.

    bugaga_, 13 Ноября 2010

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    public function redirect($url) {
            header('Location: '.$url);
            echo '<script>document.location.href = "'.$url.'"</script>';
            die('<a href="'.$url.'"><h2>Нажмите сюда. У вас ебанутый браузер.</h2></a>');
        }

    j0kz, 12 Ноября 2010

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