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

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

    +26

    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
    #include "stdafx.h"
    #include <stdio.h>
    #include <iostream>
    #include <conio.h>
    using namespace std;
    int main(){
    	setlocale(0,"");
    	int mss[4][3] = {4,2,4,3,1,9,1,6,9,1,1,9};
    	
    	printf("Значение ячеек массива:\n");
    	cout<<mss[0][0]<<" "<<mss[0][1]<<" "<<mss[0][2]<<"\n";
    	cout<<mss[1][0]<<" "<<mss[1][1]<<" "<<mss[1][2]<<"\n";
    	cout<<mss[2][0]<<" "<<mss[2][1]<<" "<<mss[2][2]<<"\n";
    	cout<<mss[3][0]<<" "<<mss[3][1]<<" "<<mss[3][2]<<"\n\n";
    
    	int *p1=&mss[1][0], *p2=p1;
    	printf("Значения созданных указателей *p1 и *p2:\n");
    	cout<<*p1<<" "<<*p2<<"\n\n";
    
    	mss[3][*p1-1]=(mss[2][0]-3)*(*p1);
    	
    	printf("Значение mss[3][2] после присваивания ему значения (mss[2][0]-3)*(*p1):\n");
    	cout<<mss[3][2]<<"\n\n";
    
    	mss[0][2]++;
    	printf("Значение mss[0][2] после его инкремента:\n");
    	cout<<mss[0][2]<<"\n\n";
    
    	*p1=(!mss[3][0]<*p2)?5*mss[3][0]/4:mss[0][2]-mss[1][2];
    	printf("Значение *p1 после присваивания 5*1/4=5/4=1,25=1 по условию:\n");
    	cout<<*p1<<"\n\n";
    
    	*p1=*p2/(mss[0][0]+1);
    	printf("Значение *p1 после присваивания *p2/(mss[0][0]+1):\n");
    	cout<<*p1<<"\n\n";
    
    	*p1=mss[0][0];
    	printf("Значение *p1 после присваивания mss[0][0]:\n");
    	cout<<*p1<<"\n\n";
    	
    	p2=&mss[2][2];
    	printf("Значение p2 после присваивания &mss[2][2]:\n");
    	cout<<p2<<"\n\n";
    
    	*p2=*p2%4+mss[2][2];
    	printf("Значение *p2 после присваивания *p2%4+mss[2][2]:\n");
    	cout<<*p2<<"\n\n";
    
    	printf("Результирующие значения ячеек массива после всех вычислений:\n");
    	cout<<mss[0][0]<<" "<<mss[0][1]<<" "<<mss[0][2]<<"\n";
    	cout<<mss[1][0]<<" "<<mss[1][1]<<" "<<mss[1][2]<<"\n";
    	cout<<mss[2][0]<<" "<<mss[2][1]<<" "<<mss[2][2]<<"\n";
    	cout<<mss[3][0]<<" "<<mss[3][1]<<" "<<mss[3][2]<<"\n\n";
    
    	printf("[...Нажмите на любую клавишу для завершения работы программы...]");
    	_getch();
    }

    Я ХЗ, что это за долбонутая хренотень, но такое задание дали знакомому на экзамене, вместо которого пришлось это решать, да ещё так, что бы экзаменаторша поверила, что это сделал он ( я же ему писал и скидывал на ВК ). А он же в этом нуб похлеще меня ( я мало на плюсах писал ). Короче, это самое неэффективное и упоротое решение среди всех. Я нафига-то подключил тут conio.h, хотя его использовал 1 раз вместо system("pause"), которое было бы кстати. А ещё тут раньше было дофига комментариев, дабы чувак хоть что-то понял. Но этот код вышел в итоге настолько долбонутым, что эти комментарии даже его сделали нечитаемым вовсе. :DDDDDDD Один знакомый чувак, что на кодера учится, охренел от вида этого безобразия. Ещё одна упртсть - то, что я чередовал printf и cout. Ну и подключил в итоге лишнюю библиотеку, хотя можно было использовать что-то одно и не подключать всякую хрень. Короче, этот код ужасен. Но я писал и похлеще. :D Особенно когда пришлось однажды другому уже чуваку на ВК скидывать решения, которые я писал в блокнот с планшета с опечатками. Это было ужасно...

    CodeStar, 15 Июля 2014

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

    +71

    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
    import java.io.IOException;
    import java.io.RandomAccessFile;
    //класс для работы с беззнаковым типом
    public class UnsignedTypes {
     private RandomAccessFile nameOfFile;
        //конструктор
        UnsignedTypes(RandomAccessFile f) {
            nameOfFile = f;
        }
        // Статическая функция которая на вход
        // принимает знаковую переменную(любого типа)
        //а на выходе возращает беззнаковый long
        //если ваш компилятор ругается не забудьте
        // превести вашу переменную к типу long явно
        // UnsignedTypes.convert((long)yourvariable)
        static public long convert(long signedvariable){
          long ans=0;
            for(int i=0;i<64;i++){
             ans+=(int)Math.pow(2,i)*(Math.abs(signedvariable % 2));
                signedvariable>>=1;
            }
            return ans;
        }
        //функция чтения WORD(unsigned short)
        public long readWord() throws IOException {
           byte[] mas = new byte[2];
            nameOfFile.readFully(mas,0,2);
            return read(mas,2);
        }
        //функция чтения DWORD(unsigned int)
        public long readDWord() throws IOException {
            byte[] mas = new byte[4];
            nameOfFile.readFully(mas,0,4);
            return read(mas, 4);
        }
        //функция используеая для работы двух верхних функций
        private static long read(byte mas[],int numberOfByte) {
            long ans = 0;
            for (int i = 0; i <numberOfByte; i++) {
                for (int j = 0; j < 8; j++) {
                    //System.out.print(Math.abs(mas[i] % 2));
                    ans+=(int)Math.pow(2,j+i*8)*(Math.abs(mas[i] % 2));
                    mas[i] >>= 1;
                }
                //System.out.print(" ");
            }
            return ans;
        }
        //функция чтения 1байтового Char из бинарного файла
        public char readChar() throws IOException {
            char ans =0;
            byte b=nameOfFile.readByte();
            ans=(char) b;
            return ans;
        }
    }

    Нуфф сказал.

    http://cybern.ru/java-antivirus.html

    gost, 15 Июля 2014

    Комментарии (4)
  4. PHP / Говнокод #16261

    +155

    1. 1
    (isset($presetFilters)) ? ((in_array($object->id,$presetFilters)) ? $object->avatar('-s') : $object->avatar('-gs-s')) : $object->avatar('-gs-s')

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

    v1m, 30 Июня 2014

    Комментарии (4)
  5. Java / Говнокод #16215

    +75

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    HostInfo info = null;
    
    if (info == null)
        return;
    
    info.setOsName(os);

    Выдержка из достаточно серьезного проекта

    SkiFF, 24 Июня 2014

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

    +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
    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
    bool ExcludeCase4(int iDepth)
            {
                MyNodeType pN = mPath[iDepth];
                if (pN != null)
                    if (pN.AuxField.bRed) return false;
    
                MyNodeType pP = mPath[iDepth - 1];
                    if (!pP.AuxField.bRed) return false;
    
                MyNodeType pS;
    
                if (LeftSon(iDepth))
                    pS = pP.pRight;
                else
                    pS = pP.pLeft;
    
                if (pS == null)
                {
                    pP.AuxField.bRed = false;
                    iDepthBad = -1;
                    return true;
                }
    
                if (pS.AuxField.bRed) return false;
    
                MyNodeType pSL = pS.pLeft;
                if (pSL != null)
                    if (pSL.AuxField.bRed) return false;
    
                MyNodeType pSR = pS.pRight;
                if (pSR != null)
                    if (pSR.AuxField.bRed) return false;
    
                pS.AuxField.bRed = true;
                pP.AuxField.bRed = false;
    
                iDepthBad = -1;
                
                return true;
    // Дерево стало хорошим. Корректировать больше не надо.
            }
    
            bool ExcludeCase6(int iDepth)
            {
                MyNodeType pN, pP, pS;
                bool bLeft, bRedP;
    
                pN = mPath[iDepth];
                if (pN != null)
                if (pN.AuxField.bRed) return false;
    
                pP = mPath[iDepth - 1];
                bRedP = pP.AuxField.bRed;
    
                bLeft = LeftSon(iDepth);
    
                if (bLeft)
                    pS = pP.pRight;
                else
                    pS = pP.pLeft;
    
                if (pS == null) return false;
                if (pS.AuxField.bRed) return false;
    
                MyNodeType pSL, pSR, p2, p3;
    
                pSL = pS.pLeft;
                pSR = pS.pRight;
    
                if (bLeft)
                {
                    if (pSR == null || pSR != null && !pSR.AuxField.bRed)
                    {
                        if (pSL == null) return false;
                        if (!pSL.AuxField.bRed) return false;
    // Сюда попали => это Случай 5.
    
                        p2 = pSL.pRight;
                        pSL.pRight = pS;
                        pS.pLeft = p2;
                        pSL.AuxField.bRed = false;
                        pS.AuxField.bRed = true;
    
                        pP.pRight = pSL;
                        pSR = pS;
                        pS = pSL;
                    }
                    else
                    if (!pSR.AuxField.bRed) return false;
    
    // Сюда попали => это Случай 6.
    
               ,......}

    кусочек красно-черного дерева, необходимый, но не достаточный

    lavrov, 18 Июня 2014

    Комментарии (4)
  7. Java / Говнокод #16188

    +74

    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
    import java.io.*;
    import java.util.*;
    
    public class Solution
    {
        public static void main(String[] args) throws Exception
          { Scanner scanner = new Scanner(System.in);
            int a = scanner.nextInt();
            int b = scanner.nextInt();
            int c = scanner.nextInt();
            int z = scanner.nextInt();
            if (a < b && a < c && a < z)
            {  if (b < c && b < z)
                {if (c < z)
                    {System.out.println(z + " " + c + " " + b + " " + a);}
                    else
                    {System.out.println(c + " " + z + " " + b + " " + a);} }
                else if (c < b && c < z)
                { if (b < z)
                    {System.out.println(z + " " + b + " " + c + " " + a);}
                    else
                    {System.out.println(b + " " + z + " " + c + " " + a);} }
                else if (z < c && z < b)
                { if (c < b)
                    {System.out.println(b + " " + c + " " + z + " " + a);}
                    else
                    {System.out.println(c + " " + b + " " + z + " " + a);} } }
            else if (b < a && b < c && b < z)
            { if (a < c && a < z)
                { if (c < z)
                    {System.out.println(z + " " + c + " " + a + " " + b);}
                    else
                    {System.out.println(c + " " + z + " " + a + " " + b);} }
                else if (c < a && c < z)
                { if (a < z)
                    {System.out.println(z + " " + a + " " + c + " " + b);}
                    else
                    {System.out.println(a + " " + z + " " + c + " " + b);} }
                else if (z < a && z < c)
                { if (a < c)
                    {System.out.println(c + " " + a + " " + z + " " + b);}
                    else
                    {System.out.println(a + " " + c + " " + z + " " + b);} } }
            else if (c < a && c < b && c < z)
            { if (a < b && a < z)
                { if (b < z)
                    {System.out.println(z + " " + b + " " + a + " " + c);}
                    else
                    {System.out.println(b + " " + z + " " + a + " " + c);} }
                else if (b < a && b < z)
                { if (a < z)
                    {System.out.println(z + " " + a + " " + b + " " + c);}
                    else
                    {System.out.println(a + " " + z + " " + b + " " + c);} }
                else if (z < a && z < b)
                { if (a < b)
                    {System.out.println(b + " " + a + " " + z + " " + c);}
                    else
                    {System.out.println(a + " " + b + " " + z + " " + c);} } }
            else if (z < a && z < b && z < c)
            { if (a < c && a < b)
                { if (c < b)
                    {System.out.println(b + " " + c + " " + a + " " + z);}
                    else
                    {System.out.println(c + " " + b + " " + a + " " + z);} }
                else if (c < a && c < b)
                { if (a < b)
                    {System.out.println(b + " " + a + " " + c + " " + z);}
                    else
                    {System.out.println(a + " " + b + " " + c + " " + z);} }
                else if (b < a && b < c)
                {
                    if (a < c)
                    {System.out.println(c + " " + a + " " + b + " " + z);}
                    else
                    {System.out.println(a + " " + c + " " + b + " " + z);} } }
    }
    }

    Ня!

    dagonlaf, 18 Июня 2014

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

    +156

    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
    if ((int)($basket->summ/1000) > 999)
        {
          $price_all = substr_replace($basket->summ," ",1,0);
          $price_all = substr_replace($price_all," ",5,0);
        }
        elseif ((int)($basket->summ/1000) > 99)
        {
          $price_all = substr_replace($basket->summ," ",3,0);
        }
        elseif ((int)($basket->summ/1000) > 9)
        {
          $price_all = substr_replace($basket->summ," ",2,0);
        }
        elseif ((int)($basket->summ/1000) < 9 && (int)($basket->summ/1000) > 0)
        {
          $price_all = substr_replace($basket->summ," ",1,0);
        }
        elseif ((int)($basket->summ/1000) == 0)
        {
          $price_all = $basket->summ;
        }

    Вот так вот у нас на офисе коллега форматировал цену...

    Mayhemalexf, 18 Июня 2014

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

    +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
    15. 15
    16. 16
    for li:=LL-2 downto 1 do
            begin
              ag:=ml_(a[li], m_(gen(len(a[li]), 1, 1), a[li]) );
    
                cp(
                  b[li],
                  ml_(
                    ml(
                      t(W[li]),
                      from2(b[li+1], li <> LL-2)
                    )
                    ,
                    ag
                  )
                );
            end;

    Функциональное программирование в императивном стиле.

    icune, 18 Июня 2014

    Комментарии (4)
  10. Java / Говнокод #16179

    +83

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    try {
        progress.dismiss();
        progress = null;
        progress.dismiss();
    } catch (Exception e) {
        Log.e("error", e.getMessage() + " " + e.getCause());
    }

    andrew91, 17 Июня 2014

    Комментарии (4)
  11. Python / Говнокод #16135

    −92

    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
    # @models.permalink
        def get_absolute_url(self):
            def urls_r(urlresolver, prefix = ''):
                urllist = []
                urlname = []
                for i in urlresolver:
                    if str(type(i)) == "<class 'django.core.urlresolvers.RegexURLResolver'>":
                        url_return = urls_r(i.url_patterns, i.regex.pattern)
                        urllist += url_return[0]
                        urlname += url_return[1]
                    else:
                        urllist.append(prefix + i.regex.pattern[1:])
                        urlname.append(i.name)
                return urllist, urlname
    
            from bizon.urls import urlpatterns
            from code.core.urls import code
    
            urllist, urlname = urls_r(urlpatterns)
    
            url = ''
            try:
                url = urllist[urlname.index('news_show')]
            except:
                print sys.exc_info()
    
            absolute_url = url.replace('^', '/').replace('(%s)' %code, '%s').replace('(\\d+)', '%d').replace('$', '') %(self.language, self.pk)
            return absolute_url

    сюрпризы в коде проектов от бывших коллег, феерией было видеть рядом с этим кодом маленькую функцию:
    def get_link(self):
    return '/ru/news/information/new/%d/' % (self.id)

    oxymoron42, 09 Июня 2014

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