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

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

    +99.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
    procedure setrandomdoubleprecision(value:byte);
    begin
    precision:=10*value;
    end;
    function rangerandomdouble(minrandomdouble,maxrandomdouble:double):double;
    begin
    result:=randomdouble(maxrandomdouble+(-minrandomdouble))+minrandomdouble
    end;
    function randomdouble(maxdouble:double):double;
    var
    l1,l2:integer;
    begin
    l1:=random(trunc(maxdouble));
    l2:=random(trunc(frac(maxdouble)*precision));
    result:=l1+(l2/precision)
    end;

    Рандом с заданной точностью. O_o

    Говногость, 13 Марта 2010

    Комментарии (2)
  3. Pascal / Говнокод #2776

    +87.9

    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
    function LockBack:bool;
    var sd:tddsurfacedesc2;
    begin
    fillchar(sd,sizeof(sd),0);
    sd.dwSize:=sizeof(sd);
    result:=fbacksurface.Lock(nil,sd,DDLOCK_SURFACEMEMORYPTR  or ddlock_nosyslock or DDLOCK_WAIT,0)=dd_ok;
    if not result then exit;
    BackPtr:=sd.lpSurface;
    end;
    function UnLockBack:bool;
    begin
    result:=fbacksurface.UnLock(nil)=dd_ok;
    BackPtr:=nil;
    end;
    function MakeSceenBackPtr:bool;
    begin
    result:=true;
    if backptr=nil then
     result:=lockBack;
    end;
    function GetSceenSafeBackPtr:pointer;//use only this
    begin
    result:=nil;
    if not MakeSceenBackPtr then exit;
    result:=backptr;
    end;

    Тот же проЭкт, что и ниже на DirectDraw7.
    Не смотря на то, что была функция function UnLockBack:bool; - она никогда не вызывалась. Странно, что на многих машинах это работало, тк я успешно выполнял блитинг в заблокированные поверхности в течении многих часов. :D

    Говногость, 13 Марта 2010

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

    +66.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
    <!-- Подготавливаем счётчик для цикла -->
    <xsl:variable name="i-tree">
            <i/><i/><i/><i/><i/><i/>
        <i/><i/>    <i/><i/>    <i/><i/>
            <i/><i/><i/>    <i/><i/><i/> <i/>
            <i/><i/><i/><i/><i/><i/><i/>
            <i/>                  <i/>
            <i/><i/><i/><i/><i/><i/>
    </xsl:variable>
    <xsl:variable name="i" select="exslt:node-set($i-tree)/i" />
    
    <!-- Подготавливаем параметр ссылок -->
    <xsl:variable name="links">
        <links next="0" previous="1">
        <xsl:for-each select="$i[position() &lt;= $date/@mday]">
            <link mday="{position()}" />
        </xsl:for-each>
        </links>
    </xsl:variable>
    
    <div id="archive">
        <xsl:call-template name="calendar">
            <xsl:with-param name="title" select="'Архив'" />
            <xsl:with-param name="url" select="concat($url_path,'%date%/')" />
            <xsl:with-param name="links" select="exslt:node-set($links)/links" />
        </xsl:call-template>
    </div>

    Вот так и мучаемся без for циклов в xsl

    Suor, 12 Марта 2010

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

    +161.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
    function formatDate($mysqlDate, $time = false) {
                    $date = "";
                    if (is_int($mysqlDate))
                    $stamp = $mysqlDate;
                    else
                    $stamp = strtotime($mysqlDate);
    
                    $date .= date("j", $stamp) . " ";
                    $date .= $this->months[date("n", $stamp) - 1] . " ";
                    $thisYear = date("Y", time());
                    $year = date("Y", $stamp);
    
                    if ($thisYear != $year)
                            $date .= ", " . date("Y", $stamp);
                    if ($time)
                            $date .= " " . date("H:i", $stamp);
    
                    if ($time) return date("d/m/Y H:i");
    					else return date("d/m/Y");
                    return $date;
    
            }

    интересен ход мыслей программиста=)

    nur, 11 Марта 2010

    Комментарии (2)
  6. bash / Говнокод #2755

    −128.8

    1. 1
    2. 2
    #102 Проверка конфигурации PHP в консоли 
    $ php -r "phpinfo\(\);"

    php -i уже не в моде

    DrFreez, 11 Марта 2010

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

    +154.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
    #include <iostream.h> //n
    int main ()
    {
    int i;
    for (i<7565445 ;;)
    for (i<3564645;;)
    for (i++;;)
    for (i>34543546;;)
    for (i>6;;)
    cout <<"23   9                34  0-932                     409            5494395               439        543-5435                   3-953-5340";
    cout <<" 1-1-1-1-1-1-11-1-1-1-1-";
    return 0;
    }

    говнокод?xD

    femme111, 08 Марта 2010

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

    +152.5

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    #include <iostream.h>
    int main ()
    {
    int i;
    for (;;)
    cout <<"THIS IS SPARTA";
    cout <<"lol";
    return 0 ;
    }

    =))) один из самых первых кодов.

    femme111, 08 Марта 2010

    Комментарии (2)
  9. VisualBasic / Говнокод #2694

    −130.4

    1. 1
    2. 2
    3. 3
    4. 4
    Private Sub Form_AfterInsert() ' событие после вставки новой записи в таблицу table
      runSQL ("UPDATE table set TYPE= 9 where ID = (select max(p.ID) from table p )")
      Me.Form.Requery
    End Sub

    Событие на форме в Access
    А достаточно было просто повесить на форму поле с источником данных TYPE и дефолтовым значением 9.

    vie, 01 Марта 2010

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

    +81.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
    public int random() {
            long info =  (long) (System.currentTimeMillis() + Runtime.getRuntime().freeMemory() + System.nanoTime());
            long info2 = (long) (System.currentTimeMillis() + Runtime.getRuntime().hashCode() + System.nanoTime());
    
            this.rnd1.setSeed(info);
            this.rnd2.setSeed(info2);
    
            int a = this.rnd1.nextInt();
            int b = this.rnd2.nextInt();
    
            return (int) (a <<= b);
    }

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

    danilissimus, 28 Февраля 2010

    Комментарии (2)
  11. C# / Говнокод #2682

    +113.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
    while (!e.Cancel) //цикл получения остальных страниц
    {
    	//прерывание получения данных (если заказали)
    	if (worker.CancellationPending)
    	{
    		e.Cancel = true;
    		break;
    	}
    	//получение очередной странцы
    	if (page == null)
    		page = _gateway.GetTrackPage(id, pageID);
    	if (page != null)
    	{
    		if (page.Type == PageType.NotReady) //если страница не готова - на следующий круг
    		{
    			page = null;
                                                     for (int i = 0; i < waitTimeout && !worker.CancellationPending; i++) //ожидание таймаута
    			Thread.Sleep(1000);
    			waitTimeout *= 2; //наращивание таймаута с каждым получением NotReady
    			if (waitTimeout > 10)
    			waitTimeout = 10;
    		}
    .........
    	}
    .........
    }

    Опрашиваем в цикле сервер вызовами _gateway.GetTrackPage. Если сервер отвечает что не готов page.Type == PageType.NotReady, то имеем креатив на тему увеличения интервала опроса...

    svist, 27 Февраля 2010

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