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

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

    +167

    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
    #define BREAKABLE_SECTION() for(;;)
    
    BREAKABLE_SECTION()
    {
        ::Packet * pPacket;
        res = ReadPacket(pPacket);
    
        if(ERR_OK == res)
        {
            res = pConstructor->PutPacket(pPacket);
    
            if(ERR_OK == res)
            {
                res = pConstructor->GetFrame(data);
            }else
            {
                //TODO:add handler of statuses other than err_ok
            }
    
            if (ERR_OK ==res)
            {
                break;
            }else
            {
                //TODO:add handler of statuses other than err_ok
            }
        }else
        {
            break;
        }
        break;
    }

    перешел в новый проект где предложили изучить существующий код в огромном объеме - а он весь из таких циклов

    openclgovno, 06 Октября 2011

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

    +87

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    public static int[] toArray(int i){
    		int[] arr = new int[new String(Integer.toString(i)).length()];
    		for(int j=0;j<new String(Integer.toString(i)).length();++j){
    			arr[j] = Integer.valueOf(new Character(new String(Integer.toString(i)).charAt(j)).toString());
    		}
    		return arr;
    	}

    Запись цифр числа в массив.

    byob, 04 Октября 2011

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

    +121

    1. 1
    2. 2
    if (_flag_visible == true) obj.SetVisible();
    else if (_flag_visible == false) obj.SetInvisible();

    Crazzy, 05 Января 2011

    Комментарии (81)
  5. Си / Говнокод #3358

    +138

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    -(void)terminateSearchThreadInBackground:(NSNumber*)threadPtr
    {
        NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
        SearchThread* thread = (SearchThread*)[threadPtr unsignedLongValue];
    
        delete thread;
        [pool release];
    }

    И вновь я в шоке от нашего проекта. По какой-то неведомой причине передать в качестве параметра указатель на поток - это очень не трушно. Зато значительно более трушно - создать из него NSNumber, предварительно преобразовав к unsigned long...

    Highlander, 31 Мая 2010

    Комментарии (81)
  6. Си / Говнокод #5

    +23

    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
    long gr, ri, r1, r2, y, z, z_rev;
    	for (i = 2; i < qr_count; i++) {
    		step = 0;
     		ri = r[i];
    		gr = - mpz_fdiv_ui(lowM, pm[i][step]);
    		r1 = gr + ri;
    		r2 = gr + pm[i][step] - ri;
    		if (r1 < 0) {
    			r1 += pm[i][step];
    		}
    		if (r2 < 0) {
    			r2 += pm[i][step];
    		}
    		while (r1 < (long) Ml2) {
    			sieve[r1][i] += 1;
    			r1 += pm[i][step];
    		}
    		while (r2 < (long) Ml2) {
    			sieve[r2][i] += 1;
    			r2 += pm[i][step];
    		}
    		for (step = 1; step < degr[i]; step++) {
    			gr = - mpz_fdiv_ui(lowM, pm[i][step]);
    			y = ri*ri;
    			y -= Npm[i][step];
    			y = y/( (long) pm[i][step-1]);
    			if (y < 0) { y += pm[i][step]; }
    			z_rev = (ri<<1) % QR[i];
    			//?IOOA?EOO ?OI?AOEO IA UAAEEIE?AIEA
    			if (z_rev == 0) { y = 0; }
    			else {
    				z = 1;	
    				while ((z_rev*z % QR[i]) != 1) { z++;}
    				y *= z*pm[i][step-1];
    				y = y % pm[i][step];
    			}
    			ri -= y;
    			if (ri < 0) { ri += pm[i][step]; }
    			r1 = gr+ri;
    			r2 = gr+pm[i][step]-ri;
    			if (r1 < 0) { r1 += pm[i][step]; }
    			if (r2 < 0) { r2 += pm[i][step]; }
    			while (r1 < (long) Ml2) {
    				sieve[r1][i] += 1;
    				r1 += pm[i][step];
    			}
    			while (r2 < (long) Ml2) {
    				sieve[r2][i] += 1;
    				r2 +=pm[i][step];
    			}
    		}
    	}

    Когда лучше, чтобы кода не было, чем, чтобы он был...

    guest, 26 Ноября 2008

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

    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
    22. 22
    using KoKo.Property;
    
    namespace MyProject {
    
        public class Person {
    
            private StoredProperty<string> FirstName { get; }
            private StoredProperty<string> LastName { get; }
            public Property<string> FullName { get; }
    
            public Person(string firstName, string lastName) {
                FirstName = new StoredProperty<string>(firstName);
                LastName = new StoredProperty<string>(lastName);
                FullName = DerivedProperty<string>.Create(FirstName, LastName, (first, last) => $"{first} {last}");
            }
    
            public void SetFirstName(string firstName) {
                FirstName.Value = firstName;
            }
    
        }
    }

    3_dar, 04 Января 2022

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

    0

    1. 1
    Как крестьяне говна поели

    This function is defined as the RtlSecureZeroMemory function (see WinBase.h). The implementation of RtlSecureZeroMemory is provided inline and can be used on any version of Windows (see WinNT.h.)

    Use this function instead of ZeroMemory when you want to ensure that your data will be overwritten promptly, as some C++ compilers can optimize a call to ZeroMemory by removing it entirely.

    Petro-san, 10 Марта 2021

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

    0

    1. 1
    https://habr.com/ru/post/456558/

    Какой багор )))))))))))))))))))))))))))))))))))))))) ))))))))))))))))))

    AHCKuJlbHblu_nemyx, 19 Июня 2019

    Комментарии (80)
  10. Assembler / Говнокод #25428

    −3

    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
    format pe gui 5.0
    
    include 'win32ax.inc'
    
      _title db '1Kbyte window',0
      _class db '#32770',0
    
      old_wndproc dd 0
    
    entry $
      xor edi,edi
      mov ecx,$80000000
      mov esi,$400000
      mov eax,WS_VISIBLE+WS_OVERLAPPEDWINDOW
      invoke CreateWindowEx,edi,_class,edi,eax,ecx,ecx,ecx,ecx,edi,edi,edi,edi
      mov ebx,eax
      invoke SetWindowLong,ebx,GWL_WNDPROC,wnd_proc
      mov [old_wndproc],eax
      invoke SendMessage,ebx,WM_INITDIALOG,edi,edi
      sub esp,32
      mov ebx,esp
    
    msg_loop:
      invoke GetMessage,ebx,edi,edi,edi
      cmp eax,1
      jb app_exit
      jne msg_loop
      invoke DispatchMessage,ebx
      jmp msg_loop
    
    wnd_proc:
      mov eax,[esp+8]
      cmp eax,WM_INITDIALOG
      je app_init
      cmp eax,WM_CLOSE
      je app_exit
      pop eax
      push [old_wndproc]
      push eax
      jmp [CallWindowProc]
    
    app_init:
      mov eax,[esp+4]
      invoke SendMessage,eax,WM_SETTEXT,0,_title
      xor eax,eax
      ret
    
    app_exit:
      invoke ExitProcess,edi
    
    data import
      library\
        kernel32,'kernel32.dll',\
        user32,'user32.dll'
      include 'api\kernel32.inc'
      include 'api\user32.inc'
    end data

    Приветствуем!
    Вот это говнокод однако?
    ...

    chiacorp, 05 Марта 2019

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

    +1

    1. 1
    https://i.imgur.com/7uRLULs.mp4

    Аппаратная нейросеть в мозгах петуха совершила ошибку классификации.

    j123123, 30 Января 2019

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