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

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

    −100

    1. 1
    Если  (ПользователиИнформационнойБазы.ТекущийПользователь().Роли.Содержит(Метаданные.Роли.Префикс_Кадровик)) тогда

    Франчайзи видимо не всегда знают о РольДоступна()

    znsoft, 02 Июня 2016

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

    +5

    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
    struct DateTime {
        string x;
        DateTime() { x = Now(); } 
        DateTime(const string& _x): x(_x) { if (BadDateTime) throw Exception(); }
        operator string() { return x; }
    };
    
    string correctDateTime(const string& value)
    {
        try
        {
            DateTime(value); // if the value is bad, ctor will throw
            return value;
        }
        catch (…) {}
        return DateTime(); // and we replace bad DateTime with currentDateTime
    }

    Где ошибка?

    Bobik, 04 Ноября 2015

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

    +142

    1. 1
    2. 2
    3. 3
    4. 4
    Вопрос у  меня есть. Весь известный интернет переискал найти не могу.  Прога для линукса нужна. Которая фиксирует факт нажатия клавиши и по желанию меня.
    Потом сообщает Вася ты с момента запуска проги нажимал кнопки 3 часа.   в таких то промежутках.  
    А то я слишком много мне так кажется [s]смотрю порно[/s] занимаюсь хуйней  а не работаю. 
    Такую прогу мне под линукс бы надо.

    Vasiliy, 22 Мая 2015

    Комментарии (42)
  5. Python / Говнокод #18061

    −180

    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
    try:
        ip_port = sys.argv[1].split(':')
        ip = ip_port[0]
     
        if len(ip_port) == 2:
            port = ip_port[1]
        elif len(ip_port) == 1:
            port = "80"
        else:
            raise IndexError
    except IndexError:
        print "Usage: %s <target ip:port>" % sys.argv[0]
        sys.exit(1)

    Эксплоиты. Неиссякаемый источник ГК.

    Я бы сделал так:

    try:
    ip_port = sys.argv[1].split(':')
    ip = ip_port[0]
    try:
    port = ip_port[1]
    except IndexError:
    port = 80
    except IndexError:
    print "Usage: %s <target ip:port>" % sys.argv[0]
    sys.exit(1)

    3_14dar, 25 Апреля 2015

    Комментарии (42)
  6. PHP / Говнокод #17691

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    taras@host ~/host/sites/default $ drush phpsh-console
    php> var_dump(eval('array()'));
    bool(false)
    PHP Parse error:  syntax error, unexpected end of file in /usr/local/lib/python2.7/dist-packages/phpsh/phpsh.php(591) : eval()'d code(1) : eval()'d code on line 1

    О мой мозг...! А Python здесь причем?

    kissarat, 24 Февраля 2015

    Комментарии (42)
  7. C++ / Говнокод #17579

    +136

    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
    #include <stdint.h>
    #include <Windows.h>
    #include <intrin.h>
    
    typedef long dt;
    
    namespace {
    	dt InitializationIsInProgress = 0;
    	dt InitializationIsFinished = 0;
    }
    
    dt InterlockedLoad(dt volatile * t){
    	return InterlockedCompareExchange(t, 0, 0);
    }
    
    dt InterlockedAssign(dt volatile * t, dt v){
    	dt c = 0;
    	while (c = InterlockedCompareExchange(t, v, c));
    }
    
    void InitializeSystem(){
    	if (InterlockedLoad(&InitializationIsFinished) == 1)
    		return;
    	while (InterlockedCompareExchange(&InitializationIsInProgress, 1, 0) == 1) Sleep(0);
    	//__ReadWriteBarrier();
    	if (InterlockedLoad(&InitializationIsFinished) == 1)
    		return;
    	Work();
    	InterlockedAssign(&InitializationIsFinished, 1);
    	InterlockedAssign(&InitializationIsInProgress, 0);
    }

    Не судите строга. Воспользуюсь как пастебином. Если найдете ошибки - пришлю пирожок.

    LispGovno, 04 Февраля 2015

    Комментарии (42)
  8. Си / Говнокод #17494

    +133

    1. 1
    2. 2
    if (dbg)
    	printf("2\n");

    // This is debug mode

    codemonkey, 22 Января 2015

    Комментарии (42)
  9. Perl / Говнокод #17110

    −288

    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
    sub serialize {
        my ($obj) = @_;
        my $result;
    
        my $ref = ref $obj;
        if ($ref eq 'HASH') {
            $result = sprintf '{ %s }', join(', ', map { qq/"$_": / . serialize($obj->{$_}) } keys %$obj);
        } elsif ($obj eq 'ARRAY') {
            $result = sprintf '[ %s ]', join(', ', map { serialize($_) } @$obj);
        } elsif (! $ref) {
            if (!defined $obj) {
                $result = 'null';
            } elsif ($obj =~ /^ -? (?:0|[1-9]\d*) (?:\.\d+)? (?:[eE][+-]?\d+)? $/x) {
                $result = $obj;
            } else {
                $obj =~ s/(["\\])/\\$1/g;
                $obj =~ s/\r/\\r/g;
                $obj =~ s/\n/\\n/g;
                $obj =~ s/\t/\\t/g;
                $result = qq/"$obj"/;
            }
        }
    
        return $result;
    }

    В продолжение #17106. Самопальная Самобытная сериализация в JSON.

    Elvenfighter, 14 Ноября 2014

    Комментарии (42)
  10. 1C / Говнокод #16636

    −162

    1. 1
    НоваяСтрока.ТелефонныйНомер = Прав(НоваяСтрока.ТелефонныйНомер, стрДлина(НоваяСтрока.ТелефонныйНомер));

    Выдрано из Рарус СофтФон. Ума не приложу, что они хотели этим сказать...

    Ivon, 03 Сентября 2014

    Комментарии (42)
  11. Куча / Говнокод #15924

    +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
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    Пример 1.
    
    def rnd20
    put rnd(0..20)
    end
    rnd20
    
    Пример 2.
    Нахождение корней квадратного уравнения.
    
    def sqrt(num, prec)
    number = num / 2.0
    
    while(((rsq = number**2) - num > prec))
    root -= (rsq - num) / (2.0*number)
    end
    
    return number
    end
    
    a = 2
    b = 10
    c = 12
    d = b**2-(4*a*c)
    put 'Дискриминант равен: ' + d.to_s + '.'
    x1 = -b-sqrt(d,1)/2*a
    x2 = -b+sqrt(d,1)/2*a
    put 'X1 = ' + x1.to_s + ', X2 = ' + x2.to_s + '.'

    Онлайн интерпретатор Lapis-а тут : http://pma.clan.su/Lapis.htm. Пишите ваши отзывы!

    Mobac, 05 Мая 2014

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