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

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

    +154

    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
    <?php
    
    /**
     * Мощная система маршрутизации.
     */
    
    $uri = trim($_SERVER['PATH_INFO'], '/');
    $split = explode('/', $uri);
    
    $numSplit = count($split);
    
    switch ($numSplit) {
        default:
            $params = array(
                'module' => 'frontpage',
                'action' => 'index'
            );
            break;
    
        case 1:
            $params = array(
                'module' => array_shift($split),
                'action' => 'index');
    
            break;
    
        case 2:
            $params = array(
                'module' => array_shift($split),
                'action' => array_pop($split));
    
            break;
    }
    
    $filename = __DIR__ . '/modules/' . $params['module'] . '/' . $params['action'] . '.php';
    
    if (file_exists($filename)) {
        include_once $filename;
    } else {
        echo 'Такой страницы не существует!';
    }
    
    ?>

    Реализация системы роутинга на PHP.

    Progress, 08 Августа 2014

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

    +133

    1. 1
    Удалено по просьбе автора

    alt0, 08 Августа 2014

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

    +71

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public StickyRouting getStickyRouting(String groupName, String sbPin, String ccNumber) {
            StickyRouting result = null;
     
            boolean isGroupNameEmpty = StringUtils.isEmpty(groupName) ? true : false;
            boolean isCcNumberEmpty = StringUtils.isEmpty(ccNumber) ? true : false;
            boolean isSbPinEmpty = StringUtils.isEmpty(sbPin) ? true : false;
            ...
    }

    bfg1989, 03 Августа 2014

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

    +160

    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
    while ($rown2 = mysql_fetch_array($nresult2)) {
      // Несколько строк кода
      $znap = $rown2['znap'];
      // И ещё немного
      // А теперь надо узнать название шоссе, на котором расположен коттедж:
      if ($znap == "1") {
    $napr = "Алтуфьевское";
    } elseif ($znap == "2") {
    $napr = "Дмитровское";
    } elseif ($znap == "3") {
    $napr = "Куркинское";
    } elseif ($znap == "4") {
    $napr = "Ленинградское";
    } elseif ($znap == "5") {
    $napr = "Новосходненское";
    } elseif ($znap == "6") {
    $napr = "Рогачевское";
    } elseif ($znap == "7") {
    $napr = "Савеловское";
    } elseif ($znap == "8") {
    $napr = "Боровское";
    } elseif ($znap == "9") {
    $napr = "Калужское";
    } elseif ($znap == "10") {
    $napr = "Киевское";
    } elseif ($znap == "11") {
    $napr = "Старокалужское";
    } elseif ($znap == "12") {
    $napr = "Варшавское";
    } elseif ($znap == "13") {
    $napr = "Новокаширское";
    } elseif ($znap == "14") {
    $napr = "Симферопольское";
    } elseif ($znap == "15") {
    $napr = "Волоколамское";
    } elseif ($znap == "16") {
    $napr = "Пятницкое";
    } elseif ($znap == "17") {
    $napr = "Горьковское";
    } elseif ($znap == "18") {
    $napr = "Домодедовское";
    } elseif ($znap == "19") {
    $napr = "Егорьевское";
    } elseif ($znap == "20") {
    $napr = "Носовихинское";
    } elseif ($znap == "21") {
    $napr = "Рязанское";
    } elseif ($znap == "22") {
    $napr = "Ильинское";
    } elseif ($znap == "23") {
    $napr = "Можайское / Минское";
    } elseif ($znap == "25") {
    $napr = "Новорижское";
    } elseif ($znap == "26") {
    $napr = "Рижское";
    } elseif ($znap == "27") {
    $napr = "Рублево-Успенское";
    } elseif ($znap == "28") {
    $napr = "Сколковское";
    } elseif ($znap == "29") {
    $napr = "Успенское";
    } elseif ($znap == "30") {
    $napr = "Каширское";
    } elseif ($znap == "31") {
    $napr = "Новорязанское";
    } elseif ($znap == "32") {
    $napr = "Осташковское";
    } elseif ($znap == "33") {
    $napr = "Щелковское";
    } elseif ($znap == "35") {
    $napr = "Подушкинское";
    } elseif ($znap == "34") {
    $napr = "Ярославское";
    } else {
    $napr = "";
    }
    // Дальше ещё куча кода

    Во, заказали доработку проекта....

    mkramer, 23 Июля 2014

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

    +119

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    private boolean isInOutConnected(StopPosition stopPoint) {
        boolean ret = false;
        List<Port> l = stopPoint.getLoadingPorts();
        
        if (l != null && l.size() > 0) {
            ret = true;
        }
        
        return ret;
    }

    someone, 16 Июля 2014

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

    +118

    1. 1
    // TODO This is zalipuha:

    someone, 16 Июля 2014

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

    +26

    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
    #include "stdafx.h"
    #include <stdio.h>
    #include <iostream>
    #include <conio.h>
    using namespace std;
    int main(){
    	setlocale(0,"");
    	int mss[4][3] = {4,2,4,3,1,9,1,6,9,1,1,9};
    	
    	printf("Значение ячеек массива:\n");
    	cout<<mss[0][0]<<" "<<mss[0][1]<<" "<<mss[0][2]<<"\n";
    	cout<<mss[1][0]<<" "<<mss[1][1]<<" "<<mss[1][2]<<"\n";
    	cout<<mss[2][0]<<" "<<mss[2][1]<<" "<<mss[2][2]<<"\n";
    	cout<<mss[3][0]<<" "<<mss[3][1]<<" "<<mss[3][2]<<"\n\n";
    
    	int *p1=&mss[1][0], *p2=p1;
    	printf("Значения созданных указателей *p1 и *p2:\n");
    	cout<<*p1<<" "<<*p2<<"\n\n";
    
    	mss[3][*p1-1]=(mss[2][0]-3)*(*p1);
    	
    	printf("Значение mss[3][2] после присваивания ему значения (mss[2][0]-3)*(*p1):\n");
    	cout<<mss[3][2]<<"\n\n";
    
    	mss[0][2]++;
    	printf("Значение mss[0][2] после его инкремента:\n");
    	cout<<mss[0][2]<<"\n\n";
    
    	*p1=(!mss[3][0]<*p2)?5*mss[3][0]/4:mss[0][2]-mss[1][2];
    	printf("Значение *p1 после присваивания 5*1/4=5/4=1,25=1 по условию:\n");
    	cout<<*p1<<"\n\n";
    
    	*p1=*p2/(mss[0][0]+1);
    	printf("Значение *p1 после присваивания *p2/(mss[0][0]+1):\n");
    	cout<<*p1<<"\n\n";
    
    	*p1=mss[0][0];
    	printf("Значение *p1 после присваивания mss[0][0]:\n");
    	cout<<*p1<<"\n\n";
    	
    	p2=&mss[2][2];
    	printf("Значение p2 после присваивания &mss[2][2]:\n");
    	cout<<p2<<"\n\n";
    
    	*p2=*p2%4+mss[2][2];
    	printf("Значение *p2 после присваивания *p2%4+mss[2][2]:\n");
    	cout<<*p2<<"\n\n";
    
    	printf("Результирующие значения ячеек массива после всех вычислений:\n");
    	cout<<mss[0][0]<<" "<<mss[0][1]<<" "<<mss[0][2]<<"\n";
    	cout<<mss[1][0]<<" "<<mss[1][1]<<" "<<mss[1][2]<<"\n";
    	cout<<mss[2][0]<<" "<<mss[2][1]<<" "<<mss[2][2]<<"\n";
    	cout<<mss[3][0]<<" "<<mss[3][1]<<" "<<mss[3][2]<<"\n\n";
    
    	printf("[...Нажмите на любую клавишу для завершения работы программы...]");
    	_getch();
    }

    Я ХЗ, что это за долбонутая хренотень, но такое задание дали знакомому на экзамене, вместо которого пришлось это решать, да ещё так, что бы экзаменаторша поверила, что это сделал он ( я же ему писал и скидывал на ВК ). А он же в этом нуб похлеще меня ( я мало на плюсах писал ). Короче, это самое неэффективное и упоротое решение среди всех. Я нафига-то подключил тут conio.h, хотя его использовал 1 раз вместо system("pause"), которое было бы кстати. А ещё тут раньше было дофига комментариев, дабы чувак хоть что-то понял. Но этот код вышел в итоге настолько долбонутым, что эти комментарии даже его сделали нечитаемым вовсе. :DDDDDDD Один знакомый чувак, что на кодера учится, охренел от вида этого безобразия. Ещё одна упртсть - то, что я чередовал printf и cout. Ну и подключил в итоге лишнюю библиотеку, хотя можно было использовать что-то одно и не подключать всякую хрень. Короче, этот код ужасен. Но я писал и похлеще. :D Особенно когда пришлось однажды другому уже чуваку на ВК скидывать решения, которые я писал в блокнот с планшета с опечатками. Это было ужасно...

    CodeStar, 15 Июля 2014

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

    +71

    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
    import java.io.IOException;
    import java.io.RandomAccessFile;
    //класс для работы с беззнаковым типом
    public class UnsignedTypes {
     private RandomAccessFile nameOfFile;
        //конструктор
        UnsignedTypes(RandomAccessFile f) {
            nameOfFile = f;
        }
        // Статическая функция которая на вход
        // принимает знаковую переменную(любого типа)
        //а на выходе возращает беззнаковый long
        //если ваш компилятор ругается не забудьте
        // превести вашу переменную к типу long явно
        // UnsignedTypes.convert((long)yourvariable)
        static public long convert(long signedvariable){
          long ans=0;
            for(int i=0;i<64;i++){
             ans+=(int)Math.pow(2,i)*(Math.abs(signedvariable % 2));
                signedvariable>>=1;
            }
            return ans;
        }
        //функция чтения WORD(unsigned short)
        public long readWord() throws IOException {
           byte[] mas = new byte[2];
            nameOfFile.readFully(mas,0,2);
            return read(mas,2);
        }
        //функция чтения DWORD(unsigned int)
        public long readDWord() throws IOException {
            byte[] mas = new byte[4];
            nameOfFile.readFully(mas,0,4);
            return read(mas, 4);
        }
        //функция используеая для работы двух верхних функций
        private static long read(byte mas[],int numberOfByte) {
            long ans = 0;
            for (int i = 0; i <numberOfByte; i++) {
                for (int j = 0; j < 8; j++) {
                    //System.out.print(Math.abs(mas[i] % 2));
                    ans+=(int)Math.pow(2,j+i*8)*(Math.abs(mas[i] % 2));
                    mas[i] >>= 1;
                }
                //System.out.print(" ");
            }
            return ans;
        }
        //функция чтения 1байтового Char из бинарного файла
        public char readChar() throws IOException {
            char ans =0;
            byte b=nameOfFile.readByte();
            ans=(char) b;
            return ans;
        }
    }

    Нуфф сказал.

    http://cybern.ru/java-antivirus.html

    gost, 15 Июля 2014

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

    +155

    1. 1
    (isset($presetFilters)) ? ((in_array($object->id,$presetFilters)) ? $object->avatar('-s') : $object->avatar('-gs-s')) : $object->avatar('-gs-s')

    код для получение префикса аватарки

    v1m, 30 Июня 2014

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

    +75

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    HostInfo info = null;
    
    if (info == null)
        return;
    
    info.setOsName(os);

    Выдержка из достаточно серьезного проекта

    SkiFF, 24 Июня 2014

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