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

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

    +100

    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
    int wmain()
    {
                    _rmCfg rmCfg;
                    double tt;
                    int i;
    
                            String *filePath=S"C:\\rm\\rm.cfg";
                            String * sqlstr;
                            rmCfg.isread=0;
                            String * dir[];
                            DateTime dt;
                            if (File::Exists(filePath))
                            {
                                    StreamReader *sr= new StreamReader(filePath);
                                    rmCfg.gosanPath=sr->ReadLine();
                                    rmCfg.iakServer=sr->ReadLine();
                                    rmCfg.iakUser=sr->ReadLine();
                                    rmCfg.iakPassword=sr->ReadLine();
                                    rmCfg.trackId=sr->ReadLine()->ToInt32(0);
                            //      rmCfg.trName=sr->ReadLine();
    
                                    Console::WriteLine(S"Viewing directory: ");
                                    Console::Write(rmCfg.gosanPath);
                                    Console::WriteLine();

    Писано было на втором фреймворке. Так бы и продолжал писать, если бы товарищ не намекнул про сериализацию.

    ursus, 05 Мая 2010

    Комментарии (20)
  3. Си / Говнокод #3140

    +136

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    memset( fc->key, 0, KEY_LEN+1);
    memset( fc->value, 0, VALUE_LEN+1);
    
    strncpy(fc->key, key, strlen( key) + 1);
    strncpy(fc->value, value,strlen( value) + 1);

    совершенное непонимание работы ф-ии strncpy

    benderlog, 30 Апреля 2010

    Комментарии (20)
  4. JavaScript / Говнокод #3092

    +144

    1. 1
    2. 2
    3. 3
    <p class="paragraph">
            ... текст...
     </p>

    зобавный кусок HTMLя, сори что в яваскрипт, сюда ближе всего :)

    adoconnection, 23 Апреля 2010

    Комментарии (20)
  5. PHP / Говнокод #3062

    +174

    1. 1
    2. 2
    3. 3
    shuffle($answers);
    shuffle($answers);
    shuffle($answers);

    Чтобы наверняка

    Shiz89, 21 Апреля 2010

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

    +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
    public class XXX implements YYY
    {
        public static final String UTILITYBATCHES = "utilityBatches";
        public static final String UTILITYCALCULATIONS = "utilityCalculations";
        public static final String WARDREGISTRATION = "wardRegistration";
        public static final String WARDINSPECTIONS = "wardInspections";
        public static final String WARDPRIMARYREGISTRATION = "wardPrimaryRegistration";
        public static final String SOCIALEVENTS2DOCUMENTS = "socialEvents2documents";
        public static final String SOCIALEVENTS = "socialEvents";
        public static final String SOCIALPACKAGES = "socialPackages";
        public static final String SOCIALAIDS = "socialAids";
        public static final String PRIVCATEGORIES = "privCategories";
        public static final String PAYMENTS = "payments";
        public static final String PAYMENTDETAILS = "paymentDetails";
        public static final String PAYMENTBATCHES = "paymentBatches";
        public static final String FAMILYRELATIONS = "familyRelations";
        public static final String FOSTERFAMILIES = "fosterFamilies";
        public static final String FAMILYMEMBERS = "familyMembers";
        public static final String INVALIDNESS = "invalidness";
        public static final String HEALTHINSPECTIONS = "healthInspections";
        public static final String EMPLOYMENTS = "employments";
        public static final String EDUCATION = "education";
        public static final String DOCUMENTS = "documents";
        public static final String FAMILIES = "families";
        public static final String DECORATIONS = "decorations";
        public static final String CALCULATIONS = "calculations";
        public static final String ATTRIBUTEVALUEHISTORY = "attributeValueHistory";
        public static final String ATTRIBUTEVALUES = "attributeValues";
        public static final String ASSIGNMENTS = "assignments";
        public static final String ADDRESSES = "addresses";
        public static final String ATTACHMENTS = "attachments";
        public static final String PERSONS = "persons";
        public static final String OCCUPANCIES = "occupancies";
        public static final String PROPERTIES = "properties";
        public static final String BUILDINGS = "buildings";
        public static final String WELFAREDELIVERY = "welfareDelivery";
    }

    clipper, 20 Апреля 2010

    Комментарии (20)
  7. PHP / Говнокод #3040

    +163

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    <?
    $fid = intval(check($_GET['fid']));
    if (empty($_GET['fid']))
    {
    echo "Ошибка!!!"; 
    ;}
    if (eregi("[^0-9]", $fid))
    {
    echo"Попытка взлома!!!";
    echo'<a href="../enter.php?'.$ses.'">Главная</a><br/>';
    ;}
    ?>

    Суровые борцы со взломом...

    Neformat, 18 Апреля 2010

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

    +103.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
    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
    using System;
    
    namespace Laba2
    {
    	class Program
    	{
    		public static void Main(string[] args)
    		{
    			
    			int max, a ;
    			string c;
    			Random rnd=new Random();
    			Console.WriteLine("Количество элементов в массиве");
    			c=Console.ReadLine();
    			a=Convert.ToInt32(c);
    			int[] nums = new int[a];
    			for (int i=0; i<a; i++)
    			{nums [i]= rnd.Next(-100,99);}
    			Console.Write("Массив   ");
    			foreach (int i in nums)
    			Console.Write(i + " "); Console.WriteLine();
    			max=nums[0];
    			foreach (int i in nums)
    			{a=1;    if (max<a) max=a;}
    			Console.WriteLine(max);
    			Console.Read();
    
    
    		}
    	}
    }

    Оставлено оригинальное оформление кода. Особое внимание заслуживает куча лишних переменных и циклов....

    ZiS, 22 Марта 2010

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

    +63.6

    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
    D3DXINLINE
    D3DXVECTOR2::D3DXVECTOR2( CONST FLOAT *pf )
    {
    #ifdef D3DX_DEBUG
        if(!pf)
            return;
    #endif
    
        x = pf[0];
        y = pf[1];
    }
    
    D3DXINLINE
    D3DXVECTOR2::D3DXVECTOR2( CONST D3DXFLOAT16 *pf )
    {
    #ifdef D3DX_DEBUG
        if(!pf)
            return;
    #endif
    
        D3DXFloat16To32Array(&x, pf, 2);
    }
    
    D3DXINLINE BOOL
    D3DXVECTOR3::operator == ( CONST D3DXVECTOR3& v ) const
    {
        return x == v.x && y == v.y && z == v.z;
    }
    
    D3DXINLINE BOOL
    D3DXVECTOR3::operator != ( CONST D3DXVECTOR3& v ) const
    {
        return x != v.x || y != v.y || z != v.z;
    }

    Во-первых, классный "режим отладки". Если D3DX_DEBUG определён, то при нулевом указателе pf происходит тихий возврат. Совершенно, так сказать, по-английски. А вот анализ второй функции показывает, что данный исходник вообще не получится собрать с D3DX_DEBUG. Наглядная иллюстрация вреда тупого копипаста. Определения операторов == и != демонстрируют, как не надо сравнивать вещественные числа.
    Кто же автор этого безобразия? Имя не известно, зато известно место работы. Ибо этот "код" полностью представлен в файле d3dx9math.inl от компании Microsoft.

    whiskey, 22 Марта 2010

    Комментарии (20)
  10. Pascal / Говнокод #2831

    +100.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
    V := +2*C.C[SFX+S1]/DT-2*C.C[SFX+S4]/DT+1*C.C[SFXY+S1]/(DT*DU)+1*C.C[SFXY+S4]/(DT*DU);
            F := F+V*T1*U3;
            FX := FX+1*V*T0*U3*DT;
            FY := FY+3*V*T1*U2*DU;
            FXY := FXY+3*V*T0*U2*DT*DU;
            V := -3*C.C[SF+S1]+3*C.C[SF+S2]-2*C.C[SFX+S1]/DT-1*C.C[SFX+S2]/DT;
            F := F+V*T2*U0;
            FX := FX+2*V*T1*U0*DT;
            V := -3*C.C[SFY+S1]/DU+3*C.C[SFY+S2]/DU-2*C.C[SFXY+S1]/(DT*DU)-1*C.C[SFXY+S2]/(DT*DU);
            F := F+V*T2*U1;
            FX := FX+2*V*T1*U1*DT;
            FY := FY+1*V*T2*U0*DU;
            FXY := FXY+2*V*T1*U0*DT*DU;
            V := +9*C.C[SF+S1]-9*C.C[SF+S2]+9*C.C[SF+S3]-9*C.C[SF+S4]+6*C.C[SFX+S1]/DT+3*C.C[SFX+S2]/DT-3*C.C[SFX+S3]/DT-6*C.C[SFX+S4]/DT+6*C.C[SFY+S1]/DU-6*C.C[SFY+S2]/DU-3*C.C[SFY+S3]/DU+3*C.C[SFY+S4]/DU+4*C.C[SFXY+S1]/(DT*DU)+2*C.C[SFXY+S2]/(DT*DU)+1*C.C[SFXY+S3]/(DT*DU)+2*C.C[SFXY+S4]/(DT*DU);
            F := F+V*T2*U2;
            FX := FX+2*V*T1*U2*DT;
            FY := FY+2*V*T2*U1*DU;
            FXY := FXY+4*V*T1*U1*DT*DU;
            V := -6*C.C[SF+S1]+6*C.C[SF+S2]-6*C.C[SF+S3]+6*C.C[SF+S4]-4*C.C[SFX+S1]/DT-2*C.C[SFX+S2]/DT+2*C.C[SFX+S3]/DT+4*C.C[SFX+S4]/DT-3*C.C[SFY+S1]/DU+3*C.C[SFY+S2]/DU+3*C.C[SFY+S3]/DU-3*C.C[SFY+S4]/DU-2*C.C[SFXY+S1]/(DT*DU)-1*C.C[SFXY+S2]/(DT*DU)-1*C.C[SFXY+S3]/(DT*DU)-2*C.C[SFXY+S4]/(DT*DU);
            F := F+V*T2*U3;
            FX := FX+2*V*T1*U3*DT;
            FY := FY+3*V*T2*U2*DU;
            FXY := FXY+6*V*T1*U2*DT*DU;
            V := +2*C.C[SF+S1]-2*C.C[SF+S2]+1*C.C[SFX+S1]/DT+1*C.C[SFX+S2]/DT;
            F := F+V*T3*U0;
            FX := FX+3*V*T2*U0*DT;
            V := +2*C.C[SFY+S1]/DU-2*C.C[SFY+S2]/DU+1*C.C[SFXY+S1]/(DT*DU)+1*C.C[SFXY+S2]/(DT*DU);
            F := F+V*T3*U1;
            FX := FX+3*V*T2*U1*DT;
            FY := FY+1*V*T3*U0*DU;
            FXY := FXY+3*V*T2*U0*DT*DU;
            V := -6*C.C[SF+S1]+6*C.C[SF+S2]-6*C.C[SF+S3]+6*C.C[SF+S4]-3*C.C[SFX+S1]/DT-3*C.C[SFX+S2]/DT+3*C.C[SFX+S3]/DT+3*C.C[SFX+S4]/DT-4*C.C[SFY+S1]/DU+4*C.C[SFY+S2]/DU+2*C.C[SFY+S3]/DU-2*C.C[SFY+S4]/DU-2*C.C[SFXY+S1]/(DT*DU)-2*C.C[SFXY+S2]/(DT*DU)-1*C.C[SFXY+S3]/(DT*DU)-1*C.C[SFXY+S4]/(DT*DU);
            F := F+V*T3*U2;
            FX := FX+3*V*T2*U2*DT;
            FY := FY+2*V*T3*U1*DU;
            FXY := FXY+6*V*T2*U1*DT*DU;
            V := +4*C.C[SF+S1]-4*C.C[SF+S2]+4*C.C[SF+S3]-4*C.C[SF+S4]+2*C.C[SFX+S1]/DT+2*C.C[SFX+S2]/DT-2*C.C[SFX+S3]/DT-2*C.C[SFX+S4]/DT+2*C.C[SFY+S1]/DU-2*C.C[SFY+S2]/DU-2*C.C[SFY+S3]/DU+2*C.C[SFY+S4]/DU+1*C.C[SFXY+S1]/(DT*DU)+1*C.C[SFXY+S2]/(DT*DU)+1*C.C[SFXY+S3]/(DT*DU)+1*C.C[SFXY+S4]/(DT*DU);

    библиотека http://alglib.sources.ru/
    модуль spline2d.pas
    произвольный кусочек кода

    MrShoor, 20 Марта 2010

    Комментарии (20)
  11. PHP / Говнокод #2808

    +188.6

    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
    SELECT
    CONCAT('<td align=center><input type=Checkbox name=del[] value=', t1.id, '>') AS 'X'
    ,CONCAT('<td align=center>', t1.id) AS '\#'
    ,CONCAT('<td align=center><a href=index.php?func=$func&ptab=$ptab&pid=$pid&id=',  t1.id, '>', IF(t1.name<>'', t1.name, '<i>Pending...</i>'), '</a>') AS 'Transaction ID'
    ,CONCAT('<td><a href=index.php?func=user&id=',  t2.id, '>', CONCAT(t2.fname, ' ', t2.lname), '</a>') AS 'User'
    ,CONCAT('<td align=center><a href=index.php?func=answers&ptab=order_id&pid=',  t1.order_id, '>history</a>') AS 'Med'
    ,CONCAT('<td align=right>', t1.amt, ' ') AS 'Amount'
    ,CONCAT('<td align=center style=\"font-size: 10px;\" title=\"', t1.data_ord, '\">',  LEFT(t1.data_ord, 10)) AS 'Order date'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  IF(t1.data_pay, LEFT(t1.data_pay, 10), '<b>Not paid</b>')) AS 'Pay date'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  IF(t1.data_send, LEFT(t1.data_send, 10), '<b>Not sent</b>')) AS 'Send date'
    ,CONCAT('<td align=center><a href=index.php?func=items&ptab=$func&pid=',  t1.id, '>', sum(t3.quant), ' Items</a>') AS '# items'
    #,CONCAT('<td align=center><a href=index.php?func=answers&ptab=order_id&pid=',  t1.order_id, '>', count(t7.id), ' answ</a>') AS '# answ'
    ,CONCAT('<td align=center>', CASE WHEN (t1.sv_type=2) THEN \"Waiting\" WHEN (t1.sv_type=-2) THEN \"<font color=FF0000><b>Rejected</b></font>\" WHEN (t1.sv_type=-1) THEN \"<font color=FF0000>Declined</font>\" WHEN (data_send AND track_num2 <> '') THEN \"<b>Re-Done</b>\" WHEN (data_send) THEN \"<b>Done</b>\" WHEN (t1.sv_type=1) THEN \"<font color=008080>Ready to ship</font>\" WHEN (data_pay) THEN \"<font color=008000>Approved</font>\" WHEN (t1.err > 0) THEN \"<font color=FF0000>Failed</font>\" ELSE \"<font color=808080>Pending</font>\" END) AS 'Status'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  t1.doctor) AS 'D'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  t1.bonus) AS 'B'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  t1.err) AS 'Err'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  t1.sv_type) AS 'S#'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  t1.pay) AS 'PM'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  t1.partner) AS 'P'
    ,CONCAT('<td align=center style=\"font-size: 10px;\">',  MID(t6.url, 8)) AS 'Shop'
    ,CONCAT('<tr><td colspan=19 style=\"font-size: 10px;\"><a target=\"_blank\" href=\"',  t1.referer, '\"><b>URL Referrer</b>: ', LEFT(t1.referer, 150), '</a><tr><td colspan=19 bgcolor=55555>') AS ''
    
    FROM $func t1
     и т.д.

    Такой вот sql-запрос с html разметкой. А вы говорите MVC :)

    awax, 17 Марта 2010

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