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

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

    +10

    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
    //В mathc.hpp:
    typedef float import (float);
    
    //В неком cpp функция:
    float cm() {
            import calcFpu;
           //...
            float src = //...
            float res = calcFpu(src);
            return res;
    }
    
    //В mathc.cpp:
    void calcFpu(float){
    //...
    void calcSSE(float){
    //...

    Мои глаза... В перлы.
    http://ideone.com/RBAMyv

    LispGovno, 27 Ноября 2012

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

    −119

    1. 1
    2. 2
    3. 3
    1С::Функторы::АппликативныйФунктор::Монад 1С::Монада::НаЭкран -> 1С::Монада::Символ,1С::Монада::СимволСлед
    | Пустота = Отчёт.Откат()
    | 1С::Буква = 1С::МонадаМир::ВводВывод::Печать 1С::Буква

    Многие интересуются, существует ли в 1С метод вывода монады на экран? Оказывается, существует!
    Данный аппликативный функтор не требует теор.ката, хотя и не без улыбки, выводит квантовое состояние функциональной монады в виде стрелок и морфизмов.
    PS Автор не я, а мой коллега, который, ковыряясь в 1С, обнаружил в нём "Функциональный режим"

    serpinski, 18 Ноября 2012

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

    +46

    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
    public function custom_result_object($class_name)
    	{
    		if (array_key_exists($class_name, $this->custom_result_object))
    		{
    			return $this->custom_result_object[$class_name];
    		}
    
    		if ($this->result_id === FALSE OR $this->num_rows() == 0)
    		{
    			return array();
    		}
    
    		// add the data to the object
    		$this->_data_seek(0);
    		$result_object = array();
    
    		while ($row = $this->_fetch_object())
    		{
    			$object = new $class_name();
    
    			foreach ($row as $key => $value)
    			{
    				$object->$key = $value;
    			}
    
    			$result_object[] = $object;
    		}
    
    		// return the array
    		return $this->custom_result_object[$class_name] = $result_object;
    	}
    
    	// --------------------------------------------------------------------
    
    	/**
    	 * Query result.  "object" version.
    	 *
    	 * @access	public
    	 * @return	object
    	 */
    	public function result_object()
    	{
    		if (count($this->result_object) > 0)
    		{
    			return $this->result_object;
    		}
    
    		// In the event that query caching is on the result_id variable
    		// will return FALSE since there isn't a valid SQL resource so
    		// we'll simply return an empty array.
    		if ($this->result_id === FALSE OR $this->num_rows() == 0)
    		{
    			return array();
    		}
    
    		$this->_data_seek(0);
    		while ($row = $this->_fetch_object())
    		{
    			$this->result_object[] = $row;
    		}
    
    		return $this->result_object;
    	}

    Govnisti_Diavol, 17 Ноября 2012

    Комментарии (14)
  5. Java / Говнокод #12131

    +62

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    _L1:
            if(i$ >= len$)
                break MISSING_BLOCK_LABEL_133;
            Constructor constructor = arr$[i$];
            if(Objects.equals(pattern, constructor.getParameterTypes()))
                return instantiateByConstructor(constructor, params);
            i$++;
              goto _L1
            return instantiateByClass(clazz);
            Exception e;
            e;
            Exception cause = e;

    TopS BI и где вы только находите таких программистов.......

    mrFoxs, 15 Ноября 2012

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

    +20

    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
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    #include <iostream>
    #include <functional>
     
    using namespace std;
     
    template<class TReceiver, class TResult>
    struct TMessage
    {
        virtual const TResult sendTo(const TReceiver&) const = 0;
        virtual const TResult sendTo(TReceiver&) const = 0;
        virtual ~TMessage(void){}
    };
     
    template<class TReceiver, class T, class TResult=void>
    struct TTypedMessage : public TMessage<TReceiver, TResult>
    {
            T _data;
            explicit TTypedMessage(const T& data):_data(data)
            {}
     
            const TResult sendTo(const TReceiver& functor) const
            {
                    return functor(_data);
            }
     
            const TResult sendTo(TReceiver& functor) const
            {
                    return functor(_data);
            }
    };
     
    class T1
    {
            typedef T1 TThis;
    public:
            void operator()(const int& i)const{cout <<"int"<< i<<endl;}
            void operator()(const double& i)const{cout <<"double"<< i<<endl;}
            void operator()(const std::reference_wrapper<double>& i)const{cout <<"double&"<< i.get()<<endl;}
            template<class T>
            void operator()(const T& i)const{cout << "UnknowenMesage"<<endl;}
    };
     
    class T2
    {
            typedef T2 TThis;
    public:
            void operator()(int i)const{cout <<"int"<< i<<endl;}
            void operator()(double i)const{cout <<"doble"<< i<<endl;}
            void operator()(std::reference_wrapper<double> i)const{cout <<"double&"<< i.get()<<endl;}
    };
     
    template<class TMessage, class TReceiver, class TResult=void>
    TResult sendMessage(TReceiver& Receiver, TMessage& Message)
    {
            TTypedMessage<TReceiver, TMessage, TResult> TypedMessage(Message);
            return TypedMessage.sendTo(Receiver);
    }
     
    template<class TMessage, class TReceiver, class TResult=void>
    TResult sendMessage(const TReceiver& Receiver, TMessage& Message)
    {
            TTypedMessage<TReceiver, TMessage, TResult> TypedMessage(Message);
            return TypedMessage.sendTo(Receiver);
    }
     
    template<class TMessage, class TReceiver, class TResult=void>
    TResult sendMessage(TReceiver& Receiver, const TMessage& Message)
    {
            TTypedMessage<TReceiver, TMessage, TResult> TypedMessage(Message);
            return TypedMessage.sendTo(Receiver);
    }
     
    template<class TMessage, class TReceiver, class TResult=void>
    TResult sendMessage(const TReceiver& Receiver, const TMessage& Message)
    {
            TTypedMessage<TReceiver, TMessage, TResult> TypedMessage(Message);
            return TypedMessage.sendTo(Receiver);
    }
     
    int main() {
            T1 a;
            T2 b;
            sendMessage(a, 10);
            sendMessage(a, 10.0);
            double d=0;
            sendMessage(a, std::ref(d));
     
            sendMessage(b, 10);
            sendMessage(b, 10.0);
            sendMessage(b, std::ref(d));
            sendMessage(a, string("kokoko"));
            int aa=6;
            sendMessage(a, aa);
            return 0;
    }

    Найдено на просторах Интранета:
    http://ideone.com/pMSA1p
    В чем смысл? Так получается больше кода?

    LispGovno, 11 Ноября 2012

    Комментарии (14)
  7. Python / Говнокод #12015

    −94

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    #!/usr/local/bin/cpython
    
    回答 = 读入('你认为中文程式语言有存在价值吗 ? (有/没有)')
     
    如 回答 == '有':
            写 '好吧, 让我们一起努力!'
    不然 回答 == '没有':
            写 '好吧,中文并没有作为程式语言的价值.'
    否则:
            写 '请认真考虑后再回答.'

    http://ru.wikipedia.org/wiki/ChinesePython

    Сопроваждай, пробуй!

    sayidandrtfm, 28 Октября 2012

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

    +95

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    println    (13.0 to 14.0 by 0.1);
    println    (1.3 to  1.4 by 0.01);
    println    (7.0 to 8.2 by 0.3);
    
    //Output:
    NumericRange(13.0, 13.1, 13.2, 13.3, 13.4, 13.5, 13.6, 13.7, 13.8, 13.9, 14.0)
    NumericRange(1.3, 1.31, 1.32, 1.33, 1.34, 1.35, 1.36, 1.37, 1.38, 1.39)
    java.lang.ArithmeticException: Non-terminating decimal expansion; no exact representable decimal result.
    	at java.math.BigDecimal.divide(BigDecimal.java:1616)

    Скала - говно. Вернее даже говнище. И это достойно отдельного поста.
    Консолька для запуска тут:
    http://www.simplyscala.com/

    3.14159265, 25 Октября 2012

    Комментарии (14)
  9. C# / Говнокод #11987

    +141

    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
    public static string GetFormURLParams(bool ld, bool размещен, bool зарегистр, bool поступил, bool неДляРазмещения, bool удален,
    									  string nomerDoc, string vhIshNom, string naim, string ntd,
    									  string vidDoc, string razdel, string tipDok,
    									  NullableDateTime датаДок1, bool датаДокПериод, NullableDateTime датаДок2,
    									  NullableDateTime датаРег1, bool датаРегПериод, NullableDateTime датаРег2,
    									  Территория территория, Улица улица, String дом1, Boolean диапазон, String дом2,
    									  string keyWords, bool scYes, bool scNo, bool scCancel)
    {
    	var str = GetOnlyOwnParams(ld, размещен, зарегистр, поступил, неДляРазмещения, удален,
    							   nomerDoc, vhIshNom, naim, ntd,
    							   vidDoc, razdel, tipDok,
    							   keyWords, scYes, scNo, scCancel);
    
    	str += DatePickerPeriod.GetParams("dt1", датаДок1, датаДокПериод, датаДок2);
    	str += DatePickerPeriod.GetParams("dt2", датаРег1, датаРегПериод, датаРег2);
    	str += AdresSearch.GetParams("adr", территория, улица, дом1, диапазон, дом2);
    
    	return str;
    }

    ни много ни мало

    wAngel, 24 Октября 2012

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

    +22

    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
    #include <iostream>
    
    using namespace std;
    
    auto fw(int i)->bool
    {
       return cout<<"Привет станция мир"<<i<<"!"<<endl, true;
    }
    
    auto ff()->bool
    {
       return cout<<"Это должно быть последние выполненное подвыражение."<<endl, false;
    }
    auto ft()->bool
    {
       return cout<<"Хьюстон, у нас КРЕСТОПРОБЛЕМЫ. Нарушен порядок вычисления и ленивость логических операторов. Мы падаем!!!!1111"<<endl, true;
    }
    
    struct TBabylonBug
    {
       bool a=true;
       TBabylonBug(){}
       TBabylonBug(bool a):a(a){}
       const TBabylonBug operator&&(const bool ophui) const 
       {
          return a&&ophui;
       }
       const TBabylonBug operator&&(const TBabylonBug& ophui) const 
       {
          return a&&ophui.a;
       }
    };
    
    int main() {
       cout<<"кo"<<endl;
       true&&fw(1)&&fw(2)&&ff()&&ft();
       cout<<"кo ко"<<endl;
       cout<<"TBabylonBug().a = "<<boolalpha<<TBabylonBug().a<<endl;
       TBabylonBug()&&fw(1)&&fw(2)&&ff()&&ft();
       cout<<"кo ко ко"<<endl;
       return 0;
    }

    http://liveworkspace.org/code/efffb5204b0f69a2725b7d9f4ba0d570

    LispGovno, 17 Октября 2012

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

    +48

    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
    $sql='SELECT DISTINCT id,title,img,description,adder,added,
    GROUP_CONCAT(DISTINCT cid,"-",caty ) AS caty,
    GROUP_CONCAT(DISTINCT oid,"-",obs,"-",face,"-",rola,"-",typ) AS obs
    FROM film
    LEFT JOIN f_c ON f_c.f_id = film.id
    LEFT JOIN cat ON f_c.c_id = cat.cid
    
    LEFT JOIN f_o ON f_o.f_id = film.id
    LEFT JOIN obs ON f_o.o_id = obs.oid
    
    WHERE film.id ='.$fid;
    
    $wynik=mysql_fetch_assoc(mysql_query($sql));
    if(isset($wynik['id'])){
    $array  = explode(',', $wynik['obs']);
    
    $r=array();//director - 0
    $s=array();//Screenwriter - 1
    $ak=array();//actors - 2
    $akn=array();//actors 2 plan - 3
    $np=array();//From Idea By - 4
    $p=array();//producers - 5
    $m=array();//music - 6
    
    foreach ($array as $item)
    {
        $a = explode('-', $item);
        if( $a[4] == 0 ) {
            $r[] = $a[0].','.$a[1].','.$a[2].','.$a[3];
        }  elseif($a[4] == 1 ) {
            $s[] = $a[0].','.$a[1].','.$a[2].','.$a[3];
        }  elseif($a[4] == 2 ) {
            $ak[] = $a[0].','.$a[1].','.$a[2].','.$a[3];
        }  elseif($a[4] == 3 ) {
            $akn[] = $a[0].','.$a[1].','.$a[2].','.$a[3];
        }  elseif($a[4] == 4 ) {
            $np[] = $a[0].','.$a[1].','.$a[2].','.$a[3];
        }  elseif($a[4] == 5 ) {
            $p[] = $a[0].','.$a[1].','.$a[2].','.$a[3];
        }  elseif($a[4] == 6 ) {
            $m[] = $a[0].','.$a[1].','.$a[2].','.$a[3];
        }
    }
    
    function dzielperson($data){    
        $i = 0;
        $ile=count($data);
        while ($i < $ile) {
            $a  = explode(",", $data[$i]);
            $caty='<a href="/person/'.dolink($a[1]).'-'.$a[0].'" class="link1">'.$a[1].'</a>'.($i==($ile-1) ? '':', ');
            $i++;
        }
        return $caty;
    }
    
    echo '<br>Title: '.$wynik[title];
    echo '<br>Desription: '.$wynik[description];
    echo '<br>directors: '.dzielperson($r);
    echo '<br>screenwriters: '.dzielperson($s);
    echo '<br>actors: '.dzielperson($ak);
    echo '<br>actors 2 plan: '.dzielperson($akn);
    echo '<br>From Idea By '.dzielperson($np);
    echo '<br>Producers: '.dzielperson($p);
    echo '<br>Music: '.dzielperson($m);

    Lowezar, 08 Октября 2012

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