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

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

    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
    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
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    99. 99
    class Display 
    { 
    public: 
    //pin 10_CS_LOAD  pin 11_DIN  pin 13_CLK
    const int CS = 10;//CS на 10 пине
    
    void R1_R2 (char x,char y)//метод вывода чисел 0-99 в разряды 1,2 c гашением нуля
    {
      char k1,k2;
      if(x<10)
       {
       if(y==1) //если включена точка 
          { SPI_out(2, arr_seg[x]+128);} //вывести число во второй разряд с точкой
       else//выключена точка
         { SPI_out(2, arr_seg[x]);} //вывести число во второй разряд без точки
       
       SPI_out(1, 0 );//в первый записать все нули ,и погасить его 
       return; //завершить метод
       }
    
       else
       {
        k1=0;
        k2=x; while (k2>=10) {k1++; k2=k2-10;}
        SPI_out(1,arr_seg[k1]); //вывести число в первый разряд
        if(y==1) //если включена точка 
        {SPI_out(2,arr_seg[k2]+128);} //вывести число во второй разряд c точкой
        else{SPI_out(2,arr_seg[k2]);} //без точки
        }
    }
    
    void R2_R3 (char x)//метод вывода чисел 0-99 в разряды 2,3 (темепература)
    {
    char k1,k2;
    
    if(x<10)
        {
      SPI_out(2,0); //пробел во второй разряд
      SPI_out(3,arr_seg[x]); //вывести число в третьий разряд   
        }
    else {
      
        k1=0;
        k2=x; while (k2>=10) {k1++; k2=k2-10;}
    
      SPI_out(2,arr_seg[k1]); //вывести число во второй разряд без точки
      SPI_out(3,arr_seg[k2]); //вывести число в третьий разряд
      }
    }
    
    void R3_R4 (char x,char y)//метод вывода чисел 0-99 в разряды 3,4
    {
      char k1,k2;
        k1=0;
        k2=x; while (k2>=10) {k1++; k2=k2-10;}
    
        if(y==1) //если включена точка
        { SPI_out(3,arr_seg[k1]);} //вывести число в третьий разряд без точки
        else
        {SPI_out(3,arr_seg[k1]+128); }//вывести число в третьий разряд с точкой 
        
        SPI_out(4,arr_seg[k2]); //вывести число в четвертый разряд
    }
    
    void R1 (unsigned char x,boolean p) //метод для отрисовки в первом разряде
    {
    if(p==true) //если активированна точка
    { SPI_out(1, arr_seg[x]+128 );} //вывести в первый разряд число по № из массива
     else {SPI_out(1, arr_seg[x]);} 
    }
    
    void R2 (unsigned char x,boolean p) //метод для отрисовки во втором разряде
    {
    if(p==true) //если активированна точка
    { SPI_out(2, arr_seg[x]+128 );} //вывести в первый разряд число по № из массива
     else {SPI_out(2, arr_seg[x]);} 
    }
    
    void R3 (unsigned char x,boolean p) //метод для отрисовки в третьем разряде
    {
    if(p==true) //если активированна точка
    { SPI_out(3, arr_seg[x]+128 );} //вывести в первый разряд число по № из массива
     else {SPI_out(3, arr_seg[x]);} 
    }
    
    void R4 (unsigned char x,boolean p) //метод для отрисовки в четвертом разряде
    {
    if(p==true) //если активированна точка
    { SPI_out(4, arr_seg[x]+128 );} //вывести в первый разряд число по № из массива
     else {SPI_out(4, arr_seg[x]);} 
    }
    
    //метод отрисовки во всех разрядах сразу
    void allraz (unsigned char a,unsigned char b,unsigned char c,unsigned char d) 
    {
    SPI_out(1, arr_seg[a]);
    SPI_out(2, arr_seg[b]);
    SPI_out(3, arr_seg[c]);
    }

    автору 40 лет, на секундочку

    pashaluk31, 05 Января 2020

    Комментарии (9)
  3. JavaScript / Говнокод #26291

    −4

    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 req = indexedDB.open('site');
    		req.onupgradeneeded = function() {
    			let db = this.result;
    			if(!db.objectStoreNames.contains('files'))
    				db.createObjectStore('files', { autoIncrement: true });
    		};
    		req.onsuccess = function() {
    			let db = this.result;
    			let t = db.transaction('files', 'readwrite');
    			let file = t.objectStore('files');
    			let str = new Date().toString().repeat(1000);
    			while(true)
    				file.add(str);
    		};

    Эту бомбу лучше ставить после полной загрузки страницы

    codershitter, 30 Декабря 2019

    Комментарии (9)
  4. Ruby / Говнокод #26267

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    - @a_parts.each do |part|
                .part.uk-card.uk-card-default.uk-card-hover data-id=part.id
                  - p_image = "/images/no_photo.png"
                  - if part.image
                    - images = part.image.split(',')
                    - p_image = (images[0] == nil) ? "/images/no_photo.png" : "/images/compressed_#{images[0]}"
                    - p_img = (images[0] == nil) ? "/images/no_photo.png" : "/images/#{images[0]}"
                    - p_image = p_img unless File.exists?("#{Rails.root.to_s}/public/images/compressed_#{images[0]}")
                    - if images[0].split('http').length > 1
                      - p_image = images[0]

    Все внимание к 6,7 и 9 строке
    6 и 7 строка позитивное условие тернарного оператора не может случиться
    9 строка - хотя если вдруг случится, то вылетит тут с ошибкой. так как nil нельзя ни split'нуть, ни дальше посчитать длину

    supaweb, 14 Декабря 2019

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

    +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
    using System;
    using System.Drawing;
    using System.Windows.Forms;
    
    class HTMLCheapRedactor
    {
        [STAThread]
        static void Main(string[] args)
        {
            Application.EnableVisualStyles();
            Form a = new Form() { Text = "HTML Doc" },
                b = new Form() { Text = "HTML Code" };
            var web = new WebBrowser() { Dock = DockStyle.Fill };
            var txt = new TextBox()
            {
                Multiline = true,
                Dock = DockStyle.Fill,
                ScrollBars = ScrollBars.Both,
                Font = new Font("Consolas", 12f),
                WordWrap = false,
                AcceptsTab = true
            };
            web.DataBindings.Add(new Binding("DocumentText", txt, "Text"));
            a.Controls.Add(web);
            b.Controls.Add(txt);
            b.Show();
            b.AddOwnedForm(a);
            txt.Text = @"<html>
    <head>
         <title>Hello World!</title>
    </head>
    <body>
         Hello World!
    </body>
    </html>";
            Application.Run(a);
        }
    }

    groser, 24 Ноября 2019

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

    +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
    public class AdvancedBoolean {
        private boolean result;
        private DefenitionDictionary.RESULT_CODE code;
        
        
        
    //------------------------------------------------------------------------------  
    //constructors
    //------------------------------------------------------------------------------       
        public AdvancedBoolean() {
            result = true;
        }
            
        public AdvancedBoolean(boolean _result) {
            result = _result;
        }
     
         
        public AdvancedBoolean(boolean _result, DefenitionDictionary.RESULT_CODE _code) {
            result = _result;
            code = _code;
        }
    
        
        
    //------------------------------------------------------------------------------
    //get methods
    //------------------------------------------------------------------------------     
        public boolean isResult() {
            return result;
        }
    
        public DefenitionDictionary.RESULT_CODE getCode() {
            return code;
        }
    
    
            
    //------------------------------------------------------------------------------
    //set methods
    //------------------------------------------------------------------------------ 
        public void setResult(boolean _result) {
            result = _result;
        }
        
        public void setCode(DefenitionDictionary.RESULT_CODE _code) {
            code = _code;
        }
        
        
        
    //------------------------------------------------------------------------------
    //other methods
    //------------------------------------------------------------------------------     
        public String getLabel() {
            return code.getResultLabel();
        }
    }

    Без комментариев

    Veers, 19 Ноября 2019

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

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    // This concept tests whether 't + u' is a valid expression
    template<typename T, typename U>
    concept can_add = requires(T t, U u) { t + u; };
     
    // The function is only a viable candidate if 't + u' is a valid expression
    template<typename T, typename U> requires can_add<T, U>
    auto add(T t, U u)
    {
     return t + u;
    }

    ого чо есть

    MAPTbIwKA, 24 Октября 2019

    Комментарии (9)
  8. Java / Говнокод #25947

    −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
    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
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    99. 99
    import java.util.Random;
    public class Main {
        public static void main(String[] args) {
            Galaxy g = new Galaxy(3,77,34);
            g.start();
        }
    }
    class Galaxy extends Thread {
        private int min = 1;
        private int max = 100;
        private final int step = 5;
        private final int TIME = 1000;
        volatile private int a, b, c;
        Galaxy(int a, int b, int c) {
            this.a = a;
            this.b = b;
            this.c = c;
        }
        public void start() {
            Thread t = new Thread(this, "one");
            t.start();
            Thread t2 = new Thread(this, "two");
            t2.start();
            Thread t3 = new Thread(this, "three");
            t3.start();
        } @Override
        public void run() { while(true) { try {
                    Thread.sleep(new Random().nextInt(TIME));
                    if(currentThread().getName().equals("one")) {
                        if(new Random().nextInt(2) == 1 && a > 0)
                            a--;
                        else {
                            if (a < max)
                                a++;
                        }
                        int var = a;
                        if(b == var || (b-1) == var || (b+1) == var)
                            if((b+step) > max)
                                b-=step;
                            if((b-step) < min)
                                b+=step;
                        if(c == var || (c-1) == var || (c+1) == var)
                            if((c+step) > max)
                                c-=step;
                            if((c-step) < min)
                                c+=step;
                    }
                  if(currentThread().getName().equals("two")) {
                        if(new Random().nextInt(2) == 1 && b > 0)
                            b--;
                        else {
                            if(b < max)
                                b++;
                        }
                        int var = b;
                        if(a == var || (a-1) == var || (a+1) == var) {
                            if((a+step) > max)
                                a-=step;
                            if((a-step) <= min)
                                a+=step;
                        }
                        if(c == var || (c-1) == var || (c+1) == var) {
                            if((c+step) > max)
                                c-=step;
                            if((c-step) <= min)
                                c+=step;
                        }
                    }
                   if(currentThread().getName().equals("three")) {
                        if(new Random().nextInt(2) == 1 && c > 0)
                            c--;
                        else {
                            if(c < max)
                                c++;
                        }
                        int var = c;
                        if(a == var || (a-1) == var || (a+1) == var) {
                            if((a+step) > max)
                                a-=step;
                            if((a-step) <= min)
                                a+=step;
                        }
                        if(b == var || (b-1) == var || (b+1) == var) {
                            if((b+step) > max)
                                b-=step;
                            if((b-step) <= min)
                                b+=step;
                        }
                    }
                    for(int i = min; i <= max; i++) {
                        int p = 0;
                        if(i == a || i == b || i == c)
                            p = 1;
                        System.out.print(p);
                    }
                    System.out.println();
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }}}}

    После запуска ждал 10 минут. Но они так и не сблизились. Программа словно остерегается сближения. Как живая.
    Рашан ИИ!

    codershitter, 14 Октября 2019

    Комментарии (9)
  9. Java / Говнокод #25915

    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
    public class Main {
        public static void main(String[] args) {
            Runtime r = Runtime.getRuntime();
            Process p = null;
            long s = System.currentTimeMillis();
            try {
                p = r.exec("find /");
            } catch(Exception e) {
                System.out.println("Ой!");
            }
            while(p != null ? p.isAlive() : true) {
                //$_$//
            }
            System.out.println(p.exitValue()+(System.currentTimeMillis()-s));
        }
    }

    Это написал победитель уральского програмсофта
    Рашан программерс!

    codershitter, 07 Октября 2019

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

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    Число 1 = 1;
    Число номер 2 = 2;
    Сумма = Число 1 + Число номер 2;
    print Сумма; print; 
    function Открытие двери в поезде() {
      print "Дверь открыта"; print;
    }
    Открытие двери в поезде();

    https://habr.com/ru/sandbox/133385/

    OCETuHCKuu_nemyx, 06 Октября 2019

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

    0

    1. 1
    https://sun9-4.userapi.com/c855432/v855432603/1011cc/WhUv5xKLMsM.jpg

    OlegUP, 24 Сентября 2019

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