1. 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)
  2. Куча / Говнокод #25482

    0

    1. 1
    real life

    syoma, 28 Марта 2019

    Комментарии (121)
  3. 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)
  4. Куча / Говнокод #25479

    +1

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

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

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

    syoma, 26 Марта 2019

    Комментарии (23)
  5. Куча / Говнокод #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)
  6. Куча / Говнокод #25477

    0

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

    LinuxGovno, 25 Марта 2019

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

    0

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

    groser, 25 Марта 2019

    Комментарии (2)
  8. 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)
  9. 1C / Говнокод #25474

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    Функция ПолучитьЗначениеПеременной(Имя) Экспорт	
    	ИмяПараметраВР = ВРег(Имя);	
    	НайденноеЗначение = Неопределено;	
    	Кэш = Неопределено;
    	ПоместитьВКэш = Ложь;	
    	НайденноеЗначение = Неопределено;	
    	Если НайденноеЗначение = Неопределено Тогда
            //... 
            КонецЕсли;

    Типовая УПП, общий модуль "РаботаСОбщимиПеренменными". Интересно, а бывает ситуация когда после двух присвоений переменной значения, она все таки не неопределено

    FesenkoA, 25 Марта 2019

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

    −1

    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
    <?php
    $d = "C:\\Users\\user\\Desktop";//Тут путь до рабочего стола текущего пользователя
    $dh  = opendir($d);
    while (false !== ($fn = readdir($dh))) {
    	if (stristr($fn, '.') !== FALSE and stripos($fn, '.') !== 0){
    		$fns[] = $fn;
    		$dir = substr($fn, strripos($fn, '.') + 1, strlen($fn));
    		$dirs[] = $dir;
    		if (!file_exists($d."\\".$dir)) {
    			if (!mkdir($d."\\".$dir, 0755, TRUE)) {
    				echo "Не удалось создать папку '".$d."\\".$dir."'<br>";
    			} else {
    			echo "Создана папка ".$d."\\".$dir."<br>";
    		}
    		}
    		if (!rename($d."\\".$fn, $d."\\".$dir."\\".$fn)) {
    			echo "не удалось переместить ".$d."\\".$fn."перемещен в ".$d."\\".$dir."<br>";
    		} else {
    			echo "Файл ".$d."\\".$fn." перемещен в ".$d."\\".$dir."<br>";
    		}
    	}
    }
    ?>

    Убираю так свой рабочий стол

    ZombiePm, 24 Марта 2019

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