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

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

    +158

    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
    function check_email(_email)
    {
      var letters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_0123456789 ";
      var i = 0, j = 0;
      var match = false;
    
      if (_email.length == 0) {
        return false;
      }
    
      for (i = 0; i < _email.length; i++)
      {
        match = false;
        for (j = 0; j < letters.length; j++)
        {
          if (_email.charAt(i) == letters.charAt(j))
          {
            match = true;
            break;
          }
        }
    
        if (!match)
        {
          if (_email.charAt(i) == '.') {
            match = true;
          }
        }
    
        if(!match) {
          break;
        }
      }
     
      if (i >= _email.length) {
        return false;
      }
     
      if (_email.charAt(i++) != '@') {
        return false;
      }
    
      var dotpassed = false;
    
      while (i < _email.length)
      {
        var match = false;
        for (j = 0; j < letters.length; j++)
        {
          if (_email.charAt(i) == letters.charAt(j))
          {
            match = true;
            break;
          }
        }
     
      if (!match)
      {
        if (_email.charAt(i) == '.')
        {
          dotpassed = true;
          match = true;
        }
      }
    
      if (!match) return false;
      i++;
      }
     if (dotpassed) return true;
     return false;
    }

    в недрах http://astro.smsonline.ru/

    Timon, 08 Июня 2012

    Комментарии (36)
  3. Pascal / Говнокод #10030

    +121

    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
    procedure TForm1.Timer2Timer(Sender: TObject);
    begin
    image75.Visible:=false;image76.Visible:=false;
    image1.Visible:=true;image2.Visible:=true;image3.Visible:=true;
    image4.Visible:=true;image5.Visible:=true;image6.Visible:=true;
    image7.Visible:=true;image8.Visible:=true;image9.Visible:=true;
    image10.Visible:=true;image11.Visible:=true;image12.Visible:=true;
    image13.Visible:=true;image14.Visible:=true;image15.Visible:=true;
    image16.Visible:=true;image17.Visible:=true;image18.Visible:=true;
    image19.Visible:=true;image20.Visible:=true;image21.Visible:=true;
    image22.Visible:=true;image23.Visible:=true;image24.Visible:=true;
    image25.Visible:=true;image26.Visible:=true;image27.Visible:=true;
    image28.Visible:=true;image29.Visible:=true;image30.Visible:=true;
    image31.Visible:=true;image32.Visible:=true;image33.Visible:=true;
    image34.Visible:=true;image35.Visible:=true;image36.Visible:=true;
    image37.Visible:=true;image38.Visible:=true;image39.Visible:=true;
    image40.Visible:=true;image41.Visible:=true;image42.Visible:=true;
    image43.Visible:=true;image44.Visible:=true;image45.Visible:=true;
    image46.Visible:=true;image47.Visible:=true;image48.Visible:=true;
    image49.Visible:=true;image50.Visible:=true;image51.Visible:=true;
    image52.Visible:=true;image53.Visible:=true;image54.Visible:=true;
    image55.Visible:=true;image56.Visible:=true;image57.Visible:=true;
    image58.Visible:=true;image59.Visible:=true;image60.Visible:=true;
    image61.Visible:=true;image62.Visible:=true;image63.Visible:=true;
    image64.Visible:=true;image65.Visible:=true;image66.Visible:=true;
    image67.Visible:=true;image68.Visible:=true;image69.Visible:=true;
    image70.Visible:=true;image71.Visible:=true;image72.Visible:=true;
    image73.Visible:=true;
    if image1.left<360 then begin timer2.Enabled:=false;button2.Visible:=true;
    image1.Visible:=false;image2.Visible:=false;image3.Visible:=false;
    image4.Visible:=false;image5.Visible:=false;image6.Visible:=false;
    image7.Visible:=false;image8.Visible:=false;image9.Visible:=false;
    image10.Visible:=false;image11.Visible:=false;image12.Visible:=false;
    image13.Visible:=false;image14.Visible:=false;image15.Visible:=false;
    image16.Visible:=false;image17.Visible:=false;image18.Visible:=false;
    image19.Visible:=false;image20.Visible:=false;image21.Visible:=false;
    image22.Visible:=false;image23.Visible:=false;image24.Visible:=false;
    image25.Visible:=false;image26.Visible:=false;image27.Visible:=false;
    image28.Visible:=false;image29.Visible:=false;image30.Visible:=false;
    image31.Visible:=false;image32.Visible:=false;image33.Visible:=false;
    image34.Visible:=false;image35.Visible:=false;image36.Visible:=false;
    image37.Visible:=false;image38.Visible:=false;image39.Visible:=false;
    image40.Visible:=false;image41.Visible:=false;image42.Visible:=false;
    image43.Visible:=false;image44.Visible:=false;image45.Visible:=false;
    image46.Visible:=false;image47.Visible:=false;image48.Visible:=false;
    image49.Visible:=false;image50.Visible:=false;image51.Visible:=false;
    image52.Visible:=false;image53.Visible:=false;image54.Visible:=false;
    image55.Visible:=false;image56.Visible:=false;image57.Visible:=false;
    image58.Visible:=false;image59.Visible:=false;image60.Visible:=false;
    image61.Visible:=false;image62.Visible:=false;image63.Visible:=false;
    image64.Visible:=false;image65.Visible:=false;image66.Visible:=false;
    image67.Visible:=false;image68.Visible:=false;image69.Visible:=false;
    image70.Visible:=false;image71.Visible:=false;image72.Visible:=false;
    image73.Visible:=false;end
    else begin image1.left:=image1.Left-3;image1.top:=image1.top-1;
    image2.left:=image2.Left+2;image2.top:=image2.top+2;
    image3.left:=image3.Left-1;image3.top:=image3.top-3;
    image4.left:=image4.Left-2;image4.top:=image4.top+4;
    ...

    Ещё 65 строк кода!
    Анимация взрыва на Delphi 7.

    artar94, 24 Апреля 2012

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

    +959

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    public static string ParseUrl(string url, HttpContextBase context = null)
    {
          context.Items[QueryStringField.Tabs.OnlyTabContent] = false;
          ...
    }

    beardeddev, 12 Апреля 2012

    Комментарии (36)
  5. Куча / Говнокод #9077

    +133

    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
    (define rsagen
      (lambda ()
         (for-each (lambda (rsa counter)
                     (cond
                      ((> (random) 0.5)
                       (fprintf out-quest "%N=~s, d=~s\n\\item Задача. Криптосистема RSA. Дано: $p=~s,\\ q=~s,\\ e=~s$. Вычислить $N, d$.\n"
                                (third rsa)
                                (fifth rsa)
                                (first rsa)
                               (second rsa)
                               (fourth rsa)
                               
                               ))
                      (else
                       ((lambda (randM) 
                          (fprintf out-quest "%p=~s,q=~s,e=~s,M=~s\n\\item Задача. Криптосистема RSA. Дано: $d=~s,\\ N=~s,\\ C=~s$. Вычислить $M$.\n"
                                   (first rsa)
                                   (second rsa)
                                   (fourth rsa)
                                (rsacrypt randM (fourth rsa) (third rsa))
                                (fifth rsa)
                               (third rsa)
                               randM
                               ))
    
                        ((Y
                          (lambda (checkrand)
                            (lambda (randf)
                              ((lambda (rand)
                                 (cond
                                  ((not (eq? (rsacrypt rand (fourth rsa) (third rsa)) rand))
                                   rand)
                                  (else
                                   (checkrand randf))))
                               (randf)))))
                         (lambda () (- (third rsa) (+ (random (quotient (third rsa) 2)) 1))))
                         
                        )
                        )
                       )
                     )
                   (take (shuffle (getalllistallmany_e (next-primes 7 50) (next-primes 5 10))) 14)
                   (build-list 14 (lambda (x) (+ x 1))))
         ))

    Генерирование заданий по криптосистеме RSA. Обратите внимание на Y комбинатор.

    shem, 11 Января 2012

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

    +153

    1. 1
    2. 2
    3. 3
    4. 4
    auto L = [](int i)->int { return i+1; };
    typedef decltype(L) TL;
    auto lfunc = &TL::operator();
    int i = (L.*lfunc)(1);

    ohlol, 08 Октября 2011

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

    +158

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    class dmRegion extends dmBaseRegion
    {
    	public static function determineLang()
    	{
    		try {
    			$lang = sfContext::getInstance()->getUser()->getCulture();
    		} catch (sfException $e) {
    			$lang = 'ru';
    		}
    
    		return $lang;
    	}

    Вот такая вот крутая модель.

    ilovephp, 06 Октября 2011

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

    +149

    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
    #include <iostream>
    
    struct empty_struct{};
    
    template<char S, typename N>
    struct char_type
    {
    	static const char value = S;
    	typedef N next;
    };
    
    typedef
    	char_type<'h', 
    	char_type<'e',
    	char_type<'l',
    	char_type<'l',
    	char_type<'o',
    	char_type<' ',
    	char_type<'w',
    	char_type<'o',
    	char_type<'r',
    	char_type<'l',
    	char_type<'d',
    	char_type<'!',
    	char_type<'\n', empty_struct> > > > > > > > > > > > > data_type;
    
    template<typename T>
    void print()
    {
    	std::cout << T::value;
    	print<T::next>();
    }
    
    template<>
    void print<empty_struct>()
    {
    }
    
    int main(int argc, char* argv[])
    {
    	print<data_type>();
    
    	return 0;
    }

    Такой простой hello world!

    AxisPod, 03 Октября 2011

    Комментарии (36)
  9. PHP / Говнокод #8053

    +166

    1. 1
    2. 2
    3. 3
    <?php
    $q=mysql_num_rows(mysql_query("SELECT * FROM `users`"));
    >

    Печально, но так поступают 85% кодеров..

    QarezZ, 01 Октября 2011

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

    +161

    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
    int b;
    int c();
    
    template<class u, class v>
    struct IsSameType
    {
    	enum {r=0};
    };
    
    template<class u>
    struct IsSameType<u,u>
    {
    	enum {r=1};
    };
    
    //...
    cout<<IsSameType<decltype(b),decltype(c())>::r<<endl;
    cout<<IsSameType<decltype(b),decltype((b))>::r<<endl;
    cout<<IsSameType<decltype(c()),decltype((b))>::r<<endl;

    Сегодня увидим новую плюшку, что нам подарил новый стандарт С++0х.
    1)Что на экране получим после выполнения данной программы?
    2)Какие реально decltype возвращает типы в данных случаях?
    Желательно ответить на оба вопроса, не компилируя. ^_^

    Говногость, 21 Августа 2011

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

    +163

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    $username = $vbulletin->userinfo['username'];
    .
    .
    .
    .
    .
    .
    $nickname = $username;
    $nickname = mysql_real_escape_string($nickname);

    PHP, булка, Эстонский код.

    swat54, 17 Августа 2011

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