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

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

    +170

    1. 1
    2. 2
    3. 3
    4. 4
    void Draw_Pixel_Memset(UINT color,    //color = _RGB32BIT(a,r,g,b) ((b) + ((g) << 8) + ((r) << 16) + ((a) << 24))
                          UINT *buffer){ //buffer =  (UINT*) ddsd.lpSurface
      memset(buffer, color,8); 
    }

    Рисование пикселя с помощью meset()

    Подскажите, пожалуйста, почему при использование этой функции в 32 битном режиме точка получается какового то серого цвета.
    С другой стороны если использовать 8 битный режим то пиксель будет нужного цвета.

    Источник: http://www.gamedev.ru/code/forum/?id=145274

    TarasB, 19 Марта 2011

    Комментарии (18)
  3. C# / Говнокод #6010

    +118

    1. 1
    2. 2
    3. 3
    4. 4
    string s=textBox1.Text,d="";
    if (s.lenght > 0)
    for (int i = 0; i < s.lenght- 1; i++)
    d += s[i];

    Код, присланный товарищем мне на проверку. Смех и грех - этот человек учится на третьем курсе политеха на специальности ИТ.

    SpeedyWizard, 17 Марта 2011

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

    +166

    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
    <html>
      <head>
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
        <title>Сайт Управления безопасности информационных технологий</title>
      </head>
      <body>
    <?php
    echo "You will be redirected after 5 seconds";
    sleep(5);
    header("Location: https://itsdhub");
    ?>
      </body>
    </html>

    Найдено в fido7.ru.php.
    Хотел сделать с помощью PHP редирект с таймаутом.

    Считал, что сначала пользователь увидит сообщение "You will be...", а через
    пять секунд сработает header. Hо получается так, что сообщение в браузере не
    выводится, а просто идет пятисекундная задержка с последующим срабатыванием
    header. Почему? Что я не так сделал?

    0__1, 04 Марта 2011

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

    +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
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    <title>
    <?php
    $t=$_SERVER['REQUEST_URI'];
    		        switch($t)
                    {
                    case '/':   echo "Канцтовары, бумага";
                      break;
                                           case '/shopping/':   echo "Каталог товаров: канцтовары, бумага, кресла, стулья, картриджи, хозтовары, офисная мебель";
                      break;
                                           case '/collection/':   echo "Коллекция рисунков: канцтовары, бумага, кресла, стулья, картриджи, хозтовары, офисная мебель";
                      break;
    
                                           case '/shopping/?id=1':   echo "Бухгалтерские бланки и книги";
                      break;
                                           case '/collection/?id=1':   echo "Коллекция бухгалтерских бланков и книг";
                      break;
                                           case '/shopping/?id=9':   echo "Каталог канцелярских товаров";
                      break;
            default: echo " Канцтовары, бумага, кресла и стулья, картриджи";
    
    }
    
    
    ?></title>

    Правлю самописку 0_о
    Формирование тайтла :)

    tranquillity, 03 Марта 2011

    Комментарии (18)
  6. PHP / Говнокод #5818

    +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
    13. 13
    14. 14
    case 'form_processing':
            	   /*многа букаф*/
            	    die();
            	    break;//чтобы наверняка
    
            	// Выведем собщение об успешной отправке данных
            	case 'processing_succses':
            	    $content = $this->get_template_block('processing_succses');
            	    break;
    
                // Выведем собщение невозможности отправки
            	case 'processing_fail':
            	    $content = $this->get_template_block('processing_fail');
            	    break;

    gorky, 28 Февраля 2011

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

    +115

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    var model = Service.GetPlanGatheringIndicators(periodId).ToList();
    ViewData["PeriodName"] = Service.GetPeriods().Where(p => p.Id == periodId).Select(p => p.TextAlias).FirstOrDefault();
    var leafEls = model.Where(x => x.HasChildren == false);
    var leafEl = (leafEls.Count() > 0) ? leafEls.First() : null;
    ViewData["PlanActivated"] = ((leafEl != null) && (leafEl.PlanActivate == true)
    		                             && (leafEl.PredictActivate == true)
    		                             && (leafEl.FactActivate == true));

    Вот в таком чудесном виде и лежит, ожидая рефактора и форматирования.

    fr0mrus, 22 Февраля 2011

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

    +123

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    string numberAsString = number.ToString();
    
        foreach(char x in numberAsString)
        {
            string y = x.ToString();
            int z = int.Parse(y);
            Console.WriteLine(z*z);
        }

    qbasic, 17 Февраля 2011

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

    +146

    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
    # include <stdio.h>
    # include <math.h>
    # include <conio.h>
    main() {
    int i,n;
    float y[12],a[12],b[12],c[12],d[12],e[12];
    clrscr();
    for (i=1;i<13;i++) {
    printf ("y[%d]= ",i);
    scanf ("%f",&y[i]); }
    //========================================//
    a[1]=y[2]-y[1];a[2]=y[3]-y[2];a[3]=y[4]-y[3];a[4]=y[5]-y[4];
    a[6]=y[7]-y[6];a[7]=y[8]-y[7];a[8]=y[9]-y[8];a[9]=y[10]-y[9];
    a[10]=y[11]-y[10];a[11]=y[12]-y[11];a[12]=0;
    b[1]=a[2]-a[1];b[2]=a[3]-a[2];b[3]=a[4]-a[3];b[4]=a[5]-a[4];
    b[6]=a[7]-a[6];b[7]=a[8]-a[7];b[8]=a[9]-a[8];b[9]=a[10]-a[9];
    b[10]=a[11]-a[10];b[11]=0;b[12]=0;
    c[1]=b[2]-b[1];c[2]=b[3]-b[2];c[3]=b[4]-b[3];c[4]=b[5]-b[4];
    c[6]=b[7]-b[6];c[7]=b[8]-b[7];c[8]=b[9]-b[8];c[9]=b[10]-b[9];
    c[10]=0;c[11]=0;c[12]=0;
    d[1]=c[2]-c[1];d[2]=c[3]-c[1];d[3]=c[4]-c[3];d[4]=c[5]-c[4];
    d[6]=c[7]-c[6];d[7]=c[8]-c[7];d[8]=c[9]-c[8];d[9]=0;d[10]=0;d[11]=0;d[12]=0;
    e[1]=d[2]-d[1];e[2]=d[3]-d[2];e[3]=d[4]-d[3];e[4]=d[5]-d[4];
    e[6]=d[7]-d[6];e[7]=d[8]-d[7];e[8]=0;e[9]=0;e[10]=0;e[11]=0;e[12]=0;
    printf ("Y\t\tY\t\tY2\t\tY3\t\tY4\n%f\t%f\t%f\t%f\t%f\n%f\t%f\t%f\t%f\t%f\n%f\t%f\t%f\t%f\t%f\n%f\t%f\t%f\t%f\t%f\n%f\t%f\t%f\t%f\t%f\n%f\t%f\t%f\t%f\t%f\n%f\t%f\t%f\t%f\t%f\n%f\t%f\t%f\t%f\t%f\n%f\t%f\t%f\t%f\t%f\n%f\t%f\t%f\t%f\t%f\n%f\t%f\t%f\t%f\t%f\n%f\t%f\t%f\t%f\t%f\n",y[1],a[1],b[1],c[1],d[1],y[2],a[2],b[2],c[2],d[2],y[3],a[3],b[3],c[3],d[3],y[4],a[4],b[4],c[4],d[4],y[5],a[5],b[5],c[5],d[5],y[6],a[6],b[6],c[6],d[6],y[7],a[7],b[7],c[7],d[7],y[8],a[8],b[8],c[8],d[8],y[9],a[9],b[9],c[9],d[9],y[10],a[10],b[10],c[10],d[10],y[11],a[11],b[11],c[11],d[11],y[12],a[12],b[12],c[12],d[12]);
    
    getche();
    }

    Работа с массивами.

    Proger, 06 Февраля 2011

    Комментарии (18)
  10. C# / Говнокод #5501

    +127

    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
    class TStopThreadWaiter
    	{
    		public static void Wait(Thread threadWaitededForStop)
    		{
    			var threadName = threadWaitededForStop.GetType().Name;
    			if (!threadWaitededForStop.Join(1000))
    			{
    				TErrorShower.ShowOnceIfAgree("Неудаёться остановить " + threadName + " поток. Будут предприняты попытки внештатной остановки.");
    				if (!threadWaitededForStop.Join(200))
    					threadWaitededForStop.Interrupt();
    				if (!threadWaitededForStop.Join(200))
    				{
    					TErrorShower.ShowOnceIfAgree(threadName + " поток не удалость остановить принудительно через Interrupt. Предпринимаю попытку принудительной остановки через Abort.");
    					threadWaitededForStop.Abort();
    					if (!threadWaitededForStop.Join(200))
    					{
    						TErrorShower.ShowOnceIfAgree(threadName + " поток не удалость остановить принудительно через Abort. Завершаем приложение.");
    						Application.Exit();
    					}
    				};
    			};
    		}
    	}

    Говногость, 03 Февраля 2011

    Комментарии (18)
  11. Assembler / Говнокод #5500

    +263

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    :start
    call lol
    jmp start
    
    :lol
    push 9
    ret
    
    :test
    ...

    Не очевидная альтернатива jmp test

    rofl, 02 Февраля 2011

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