1. C# / Говнокод #25485

    +2

    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
    private bool IsOsTurn()
    {
        if (turn.Text.Equals(oString))
            return true;
        return false;
    }
    
    private bool ADiagonalIsSame()
    {
        if (LeftToRightDiagonalIsSame()) { return true; }
        if (RightToLeftDiagonalIsSame()) { return true; }
        return false;
    }
    
    private bool IsAWin()
    {
        if (ARowIsSame() || AColumnIsSame() || ADiagonalIsSame())
            return true;
        else return false;
    }

    Взято из кода "крестики-нолики", работающем через DataGridView // <- да, это изврат!
    Такое чувство, что автор сука не умеет работать с булевыми значениями.
    Удивлен, что не встретил что-то вроде:

    if (turn.Text.Equals(oString) == true)

    groser, 28 Марта 2019

    Комментарии (6)
  2. Python / Говнокод #25484

    −1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    # Чтение файла в "Python":
    with open("suka") as blyat:
        govno = blyat.read()
    
    // Чтение файла в "PHP":
    $govno = file_get_contents("suka");

    Почему нету способа в одну функцию, и нужно добавлять лишнюю вложенность?
    Это какой-то пиздец.

    OCETuHCKuu_nemyx, 28 Марта 2019

    Комментарии (49)
  3. Java / Говнокод #25483

    −1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if (userSettingsErrorType != null && userSettingsErrorType.getError() != null &&
    				userSettingsErrorType.getError().getMessage() != null && userSettingsErrorType.getError().getMessage().getName() != null &&
    				userSettingsErrorType.getError().getMessage().getName().length != 0) {
    			try {
    				getView().ifPresent(v -> v.setFieldErrorMessage(SettingsField.NAME,
    				                                                userSettingsErrorType.getError().getMessage().getName()[0]));
    			} catch (Exception e) {
    				Crashlytics.logException(e);
    			}
    }

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

    copatel, 28 Марта 2019

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

    0

    1. 1
    real life

    syoma, 28 Марта 2019

    Комментарии (121)
  5. C# / Говнокод #25480

    0

    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
    static int Z2(bool[,] m, int X, int Y)
    {
        int count = 0;
        int
            x_ = Max(0, X - 1),
            _x = Min(5, X + 1),
            y_ = Max(0, Y - 1),
            _y = Min(5, Y + 1);
        for (int x = x_; x <= _x; x++)
            for (int y = y_; y <= _y; y++)
                if (m[x, y]) ++count;
        if (m[X, Y]) --count;
        return count;
    }

    Когда-то давно на олимпиаде искал таким образом на матрице M[6x6] количество зафлагованных соседей для элемента M[x,y].

    groser, 27 Марта 2019

    Комментарии (9)
  6. Куча / Говнокод #25479

    +1

    1. 1
    Вы такого еще не видали

    https://paste.ubuntu.com/p/gpsMVPnd6T/
    Отформатировано: https://paste.ubuntu.com/p/vF8hCGN6Z3/

    20 уровней индентации, адовый копипаст.

    syoma, 26 Марта 2019

    Комментарии (23)
  7. Куча / Говнокод #25478

    0

    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
    integers =: adverb def 'i.u'
       5 integers
    0 1 2 3 4
       
       plus =: adverb def '(}:u) + {:u'
       2 3 plus
    5
       1 2 3  1 plus
    2 3 4
       
       inc =: adverb def '(u , 1) plus'
       5 inc
    6
       5 integers inc
    1 2 3 4 5
       
       factorial =: integers inc product
       0 factorial
    1
       7 factorial
    5040

    Так то лучше, а то надоело справа налево писать.

    COTOHuHCKuu_nemyx, 25 Марта 2019

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

    0

    1. 1
    2. 2
    3. 3
    Конкурс для прыщеблядей:
    https://habr.com/ru/company/mailru/blog/443492/
    Го участвовать?

    LinuxGovno, 25 Марта 2019

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    static string getl
    {
        get { return gets(get); }
    }

    groser, 25 Марта 2019

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

    +2

    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
    using big = System.Numerics.BigInteger;
    class Mega
    {
        readonly static Type
            _dbl = typeof(double),
            _str = typeof(string),
            _chr = typeof(char),
            _int = typeof(int),
            _big = typeof(big);
        object o;
        public Mega(object O) => o = O;
        public static Mega operator +(Mega a, Mega b) {
            Type ta = a.o.GetType(), tb = b.o.GetType();
            if (ta == _str || tb == _str)
                return new Mega(String.Concat(a.o, b.o));
            if (ta == _dbl) {
                if (tb == _dbl) return new Mega((double)a.o + (double)b.o);
                if (tb == _chr) return new Mega((double)a.o + (char)b.o);
                if (tb == _int) return new Mega((double)a.o + (int)b.o);
            } if (tb == _dbl) {
                if (ta == _chr) return new Mega((char)a.o + (double)b.o);
                if (ta == _int) return new Mega((int)a.o + (double)b.o);
            } if (ta == _int) {
                if (tb == _chr) return new Mega((int)a.o + (char)b.o);
                if (tb == _int) return new Mega((int)a.o + (int)b.o);
                if (tb == _big) return new Mega((int)a.o + (big)b.o);
            } if (ta == _big) {
                if (tb == _chr) return new Mega((big)a.o + (char)b.o);
                if (tb == _int) return new Mega((big)a.o + (int)b.o);
                if (tb == _big) return new Mega((big)a.o + (big)b.o);
            } if (ta == _chr) {
                if (tb == _chr) return new Mega((char)((char)a.o + (char)b.o));
                if (tb == _int) return new Mega((char)a.o + (int)b.o);
            } throw new Exception("bad operators types");
        } public override string ToString() => o.ToString();
    }

    "Некий класс Mega подразумевает совместную работу нескольких типов в одной оболочке."
    // другие операторы и методы такие же, не стал копировать

    groser, 25 Марта 2019

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