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

    В номинации:
    За время:
  2. Куча / Говнокод #27679

    +3

    1. 1
    2. 2
    3. 3
    Как же я ненавижу безвузных дебилов
    Учеников ВУЗА, которые НИХУЯ не могут.
    Нахуя в ВУЗ поступать, если ты ДЕБИЛ и не сможешь ни одной лабы выполнить?

    6E3BY3HuK, 25 Сентября 2021

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

    −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
    Чуваки, давайте тред про книги.
    
    Сейчас как раз хочу выбрать книгу младшему брату (14yo) какое-нибудь интро
    в программирование, такое же волшебное, как книга Ларри, только попроще тех-
    нически, где бы объяснялось, что переменная — это ебучая «ячеечка памяти»,
    и всё такое. Только я подумал лучше сначала дать что-нибудь компилируемое,
    а то потом хрен переучишь, как вы на это смотрите? Сразу на ум приходят книги
    Вирта, но у паскаля сейчас с инфраструктурой пиздец, и на линуксе его компи-
    лить как-то не нативно. (GNU Pascal почил, а заставлять брата патчить кде рано).
    
    У меня у самого опыт перекошенный, я начинал с VB, потом перешел на Pascal,
    но книги попадались отстойные.
    
    Короче, нужен ваш совет.
    Особенно, великих наставшиков roskomgovno, roman-kashitsyn и bormand, и всех
    остальных. Кроме Стертора.

    vistefan, 16 Июля 2018

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

    0

    1. 1
    Политота #36

    #6: (vanished) https://govnokod.xyz/_26648
    #7: https://govnokod.ru/26673 https://govnokod.xyz/_26673
    #8: https://govnokod.ru/27052 https://govnokod.xyz/_27052
    #9: (vanished) https://govnokod.xyz/_27852
    #10: https://govnokod.ru/28060 https://govnokod.xyz/_28060
    #11: https://govnokod.ru/28091 https://govnokod.xyz/_28091
    #12: https://govnokod.ru/28103 https://govnokod.xyz/_28103
    #13: https://govnokod.ru/28144 https://govnokod.xyz/_28144
    #14: https://govnokod.ru/28270 https://govnokod.xyz/_28270
    #15: https://govnokod.ru/28341 https://govnokod.xyz/_28341
    #16: https://govnokod.ru/28379 https://govnokod.xyz/_28379
    #17: https://govnokod.ru/28394 https://govnokod.xyz/_28394
    #18: https://govnokod.ru/28440 https://govnokod.xyz/_28440
    #19: https://govnokod.ru/28572 https://govnokod.xyz/_28572
    #20: https://govnokod.ru/28656 https://govnokod.xyz/_28656
    #21: (vanished) https://govnokod.xyz/_28666
    #22: https://govnokod.ru/28676 https://govnokod.xyz/_28676
    #23: https://govnokod.ru/28684 https://govnokod.xyz/_28684
    #24: https://govnokod.ru/28691 https://govnokod.xyz/_28691
    #25: https://govnokod.ru/28698 https://govnokod.xyz/_28698
    #26: https://govnokod.ru/28704 https://govnokod.xyz/_28704
    #27: https://govnokod.ru/28711 https://govnokod.xyz/_28711
    #28: https://govnokod.ru/28721 https://govnokod.xyz/_28721
    #29: https://govnokod.ru/28728 https://govnokod.xyz/_28728
    #30: (vanished) https://govnokod.xyz/_28747
    #31: https://govnokod.ru/28757 https://govnokod.xyz/_28757
    #32: https://govnokod.ru/28770 https://govnokod.xyz/_28770
    #33: https://govnokod.ru/28835 https://govnokod.xyz/_28835
    #34: https://govnokod.ru/28924 https://govnokod.xyz/_28924
    #35: https://govnokod.ru/29080 https://govnokod.xyz/_29080

    nepeKamHblu_nemyx, 11 Сентября 2025

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

    +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
    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
    def export_to_csv(model, fields=None, related_models=[]):
        def export(request):
            meta = model._meta
            queryset = model.objects.all()
            
            if fields is not None:
                field_names = fields
            elif 'Shops' in related_models and 'Spots' in related_models:
                field_names = [field.name for field in Shops._meta.fields] +\
                    [field.name for field in Spots._meta.fields]
            elif 'Products' in related_models and 'Spots' in related_models:
                field_names = [field.name for field in Products._meta.fields] +\
                    [field.name for field in Spots._meta.fields]
            else:
                field_names = []
                for field in meta.fields:
                    if not field.name in FORBIDDEN_FIELDS:
                        field_names.append(field.name)
    
            response = HttpResponse(content_type='text/csv')
            response['Content-Disposition'] = 'attachment; filename={}.csv'.format(meta)
            response.write(u'\ufeff'.encode('utf8'))
    
            writer = csv.writer(response, delimiter=',', lineterminator='\n', quoting=csv.QUOTE_ALL, dialect='excel')
            writer.writerow(field_names)
    
            if len(related_models) == 0:
                for obj in queryset:
                    row = writer.writerow([getattr(obj, field) for field in field_names])
    
            elif 'Shops' in related_models and 'Spots' in related_models:
                shops_fields = [field.name for field in Shops._meta.fields]
                contact_fields = [field.name for field in Spots._meta.fields]
    
                for obj in queryset:
                    row = []
    
                    if obj.Shops is not None:
                        row += [getattr(obj.Shops, field) for field in shops_fields]
                    else:
                        row += ['' for field in shops_fields]
    
                    if obj.Contact is not None:
                        row += [getattr(obj.Contact, field) for field in contact_fields]
                    else:
                        row += ['' for field in contact_fields]
    
                    writer.writerow(row)
                
            elif 'Products' in related_models and 'Spots' in related_models:
                products_fields = [field.name for field in Products._meta.fields]
                contact_fields = [field.name for field in Spots._meta.fields]
                
                for obj in queryset:
                    row = []
                    
                    if obj.Products is not None:
                        row += [getattr(obj.Products, field) for field in products_fields]
                    else:
                        row += ['' for field in products_fields]
    
                    if obj.Contact is not None:
                        row += [getattr(obj.Contact, field) for field in contact_fields]
                    else:
                        row += ['' for field in contact_fields]
                    
                    writer.writerow(row)
    
            return response
    
        return export

    В юности нагородила вот такую портянку для экспорта в csv связных между собой таблиц. Связка данных на уровне DAO-шки (в терминологии Джанго - Managers)? Пфф... Только инжект if-else с копипастой связки данных, только хардкор!

    JaneBurt, 11 Декабря 2021

    Комментарии (331)
  6. Pascal / Говнокод #13306

    +138

    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
    В этой статье я расскажу как сделать дополнительный поток в программе.
    
    Приступим.
    
    1. Создаём форму
    2. Кидаем на форму кнопку со вкладки Standart
    3. Кидаем на форму Memo со вкладки Standart
    
    Переходим в код и после
    
    private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    Пишем следующие:
     
    TVANSThread=class(TThread) 
      Private
        Protected
          Procedure Execute; override;
      Public
        Constructor Create(CreateSuspended: boolean);
      end;
    
    
    Далее кликаем по строчке Constructor Create(CreateSuspended: boolean); и жмём сочентание клавиш Ctrl+Shift+C
    
    После чего должно появится следующие:
    
    
    constructor TVANSThread.Create(CreateSuspended: boolean);
    begin
    
    end;
    
    В эту процедуру вписываем следующею строчку:
    
    inherited Create(CreateSuspended);
    
    Прокрутим чуть ниже и увидим процедуру TVANSThread.Execute;
    Она выглядит так:
    
    procedure TVANSThread.Execute;
    begin
    
    end;
    
    В неё вписываем следующий код:
    
    for i:=0 to 10000 do Form1.Memo1.Lines.Add(IntToStr(i))
    
    И не забываем о переменных:
    
    var i:integer;
    
    Далее кликаем по кнопке и вписываем следующий код:
    
    TVANSThread.Create(false);

    Анальный урок.
    Автор - анальный учитель с сайта www.vans-soft.ru/

    Stertor, 04 Июля 2013

    Комментарии (330)
  7. ActionScript / Говнокод #17911

    −91

    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
    var l:uint = 0;
    			var product:Vector.<IProduct> = new Vector.<IProduct>;
    			if (programmers.length > designers.length)
    			{
    				l = designers.length;
    			}
    			else if (programmers.length < designers.length)
    			{
    				l = programmers.length;
    			}
    			else
    			{
    				l = programmers.length;
    			}

    nightrain912, 02 Апреля 2015

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

    +154

    1. 1
    2. 2
    3. 3
    4. 4
    $res = $link->query("SELECT * FROM BetaTesters WHERE email='".$_POST['email']."'");
        if($row = mysqli_fetch_array($res))
        {
         $result['message'] = "<p>Емейл уж используется!</p>";

    skydev, 02 Апреля 2015

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

    +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
    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
    * https://github.com/nwchemgit/nwchem/blob/8ac6bc6856d50954029cad01a751006851682398/src/nwpw/pspw/lib/psi/psi.F#L324
    
          subroutine psi_sort_f_orb()
          implicit none
    #include "errquit.fh"
    
    #include "bafdecls.fh"
    #include "psi.fh"
    
          logical value
          integer i,j,ii,jj,ms
          integer r1(2)
          real*8  ei,ej
    
          value = BA_push_get(mt_dcpl,npack1,'r1',r1(2),r1(1))
          if (.not. value) call errquit(
         >     'psi_sort_f_orb: out of stack memory',0,MA_ERR)
    
          do ms=1,ispin
    
            !*** Bubble sort ***
            do ii=1,ne(ms)
             do jj=ii+1,ne(ms)
               i = ii + (ms-1)*ne(1)
               j = jj + (ms-1)*ne(1)
               ei = dbl_mb(eig(1)+i-1)
               ej = dbl_mb(eig(1)+j-1)
    
               !*** swap ***
               if (ej.lt.ei) then
                 dbl_mb(eig(1)+i-1) = ej
                 dbl_mb(eig(1)+j-1) = ei
                 call Pack_c_Copy(1,dcpl_mb(psi1(1)+(i-1)*npack1),
         >                          dcpl_mb(r1(1)))
                 call Pack_c_Copy(1,dcpl_mb(psi1(1)+(j-1)*npack1),
         >                          dcpl_mb(psi1(1)+(i-1)*npack1))
                 call Pack_c_Copy(1,dcpl_mb(r1(1)),
         >                          dcpl_mb(psi1(1)+(j-1)*npack1))
               end if
    
             end do
            end do
    
          end do
    
          value = BA_pop_stack(r1(2))
          if (.not. value) call errquit(
         >     'psi_sort_f_orb: popping stack memory',1, MA_ERR)
          return
          end

    Сортировка пузырьком на фортране из пакета квантовохимических вычислений "NWChem"

    j123123, 30 Ноября 2021

    Комментарии (326)
  10. Куча / Говнокод #24868

    −12

    1. 1
    Политота #5

    #1: https://govnokod.ru/15804 http://govnokod.xyz/_15804/ (не открывается)
    #2: https://govnokod.ru/19910 http://govnokod.xyz/_19910/
    #3: https://govnokod.ru/23643 http://govnokod.xyz/_23643/
    #4: https://govnokod.ru/24822 (потер пидарас сракер) http://govnokod.xyz/_24822/

    Русня, сасай!

    syoma, 07 Октября 2018

    Комментарии (326)
  11. Си / Говнокод #13050

    +130

    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
    void main(void)
    {
    	int a1,a2,a3,a4,a5,a6,a7,a8,a9;
    	int b1,b2,b3,b4,b5,b6,b7,b8,b9;
    	int c1,c2,c3,c4,c5,c6,c7,c8,c9;
    	int d1,d2,d3,d4,d5,d6,d7,d8,d9;
    	int e1,e2,e3,e4,e5,e6,e7,e8,e9;
    	int f1,f2,f3,f4,f5,f6,f7,f8,f9;
    	int g1,g2,g3,g4,g5,g6,g7,g8,g9;
    	int h1,h2,h3,h4,h5,h6,h7,h8,h9;
    	int i1,i2,i3,i4,i5,i6,i7,i8,i9;
    
    ....
    
    }

    Когда-то когда я еще не знала о существовании массивов.... это начало программы для решения судоку.
    В продолжении этого были определены еще 729 переменных для вариантов решения.

    Daiver, 25 Мая 2013

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