1. Java / Говнокод #2905

    +74.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
    32. 32
    private String getNullString(int kol){
            String nullstr="";
            for(int i=0;i<kol;i++){
                nullstr+="0";
            }
            return nullstr;
        }
    
    public String getNumber(int idd){
            String regid="";
            String idds=(idd+"");
            if(idds.length()<getNumberLenth()){
                regid+=getNullString(getNumberLenth()-idds.length());
                regid+=idds;
            }
            String regnum="";
            regnum+=getNumberPrefix()+regid;
            if(getNumberPeriod()!=NUM_PERIOD_NOPERIOD){
                GregorianCalendar c=new GregorianCalendar();
                switch(getNumberPeriod()){
                    case NUM_PERIOD_MONTH:
                        int m=c.get(Calendar.MONTH)+1;
                        regnum+="-"+m;
                        regnum+=".";
                        regnum+=c.get(Calendar.YEAR);
                        break;
                    case NUM_PERIOD_YEAR:
                        regnum+="-"+c.get(Calendar.YEAR);
                }
            }
            return regnum;
        }

    Ну незнал я про String.format (((..

    maxt, 01 Апреля 2010

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

    +102

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function TicksBetween(t1, t2 : dword) : dword;
    begin
    	if t2 > t1
    	then Result:=t2 - t1 + 1
    	else Result:=dword(-1) - t1 + t2 + 1;
    end;

    Никогда не пишите с бодуна!

    whiskey, 01 Апреля 2010

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

    +143.6

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    for i:=1 to 10000000 do
    begin
    {...}
    if m=0 then break;
    end;

    kozzztya, 31 Марта 2010

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

    −873.6

    1. 1
    2. 2
    declare @FromDate datetime, @ToDate datetime
    set @FromDate =  convert(char(10),dateadd(dd,-1,getdate()),20)

    synapse, 31 Марта 2010

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

    −119.4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Для й = 1 По КонДата-НачДата+1 Цикл
            ТекДата = НачДата+й-1;
            
            ДокТ.ВыбратьДокументы(ТекДата, ТекДата);
            Пока ДокТ.ПолучитьДокумент() = 1 Цикл

    Копаясь в самописной конфе, с которой сейчас работаю, дописываю, и усердно исправляю чей-то быдлокод, временами нахожу просто уникальные творения.
    Пожалуй это творение - вершина извращенной фантазии)
    Думаю комментарии излишни)) автор перебирает дни, а потом отдельно по каждому дню делает выборку событий

    Lewkee, 31 Марта 2010

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

    +159.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
    //возвращает массив без повторяющихся элементов (обязательно должен быть элемент [id])
    function arrayUnique($arr)
    	{	
    		$aResult = array();
    		$aIDs = array();
    		foreach($arr as $val)
    			if (!in_array($val['id'], $aIDs))
    			{
    				array_push($aIDs, $val['id']);
    				array_push($aResult, $val);
    			}
    		return $aResult;
    	}

    На входе массив массивов.
    Массивы равны, если все элементы одного массива равны элементам другого.
    На выходе должен быть массив уникальных массивов.
    По моему это попахивает.

    nechin, 31 Марта 2010

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

    +54.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
    35. 35
    36. 36
    #include <iostream>
    
    class TerVer {
    public:
      short d1, d2, d3, d4;
      short totalCounter, goodCounter;
      bool DoneInc;
      TerVer(): d1(1), d2(0), d3(0), d4(0), totalCounter(1), goodCounter(0), DoneInc(false) {}
      bool IsGood() {
        return (
          (d1==d2 && d1!=d3 && d1!=d4 && d3!=d4) ||
          (d1==d3 && d1!=d2 && d1!=d4 && d2!=d4) ||
          (d1==d4 && d1!=d2 && d1!=d3 && d2!=d3) ||
    
          (d2==d3 && d2!=d1 && d2!=d4 && d1!=d4) ||
          (d2==d4 && d2!=d1 && d2!=d3 && d1!=d3) ||
    
          (d3==d4 && d3!=d1 && d3!=d2 && d1!=d2)
          ) ? true : false;
      }
      void Inc() {
        d4++; 
        if(d4>9) { d4=0; d3++; if(d3>9) {d3=0; d2++; if(d2>9) { d2=0; d1++; if(d1>9) DoneInc = true; } } }
        if (!DoneInc) { totalCounter++; if (IsGood()) goodCounter++; }
      }
    };
    
    int main() {
      TerVer z;
      while(!z.DoneInc) {
        z.Inc();
      }
      cout << z.goodCounter << " / " << z.totalCounter << " = " << (double)z.goodCounter/z.totalCounter << endl;
    
      return 0;
    }

    Найти вероятность того, что в случайном четырехзначном числе ровно две цифры совпадают.
    Вот что бывает, когда лень думать.

    elmigranto, 30 Марта 2010

    Комментарии (24)
  8. JavaScript / Говнокод #2898

    +152

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    $("form").one("ajaxSuccess", function(e){
                        getCookie();
                    });
                    if (window.location == "http://pgsha.ru/web/system/login")	//Бубен
                        window.location = "http://pgsha.ru/web/system/login/";
                    getOrgUnits();

    des-1008d, 30 Марта 2010

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

    +180

    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
    function writeTotalEntries()
        {
            $cnt = $this->totalentries;
            if ($cnt == 0) {
                return "записей нет";
            } elseif ($cnt == 1)
            {
                return "1 запись";
            } elseif ($cnt == 2)
            {
                return "2 записи";
            } elseif ($cnt == 3)
            {
                return "3 записи";
            } elseif ($cnt == 4)
            {
                return "4 записи";
            } elseif ($cnt == 5)
            {
                return "5 записей";
            } elseif ($cnt == 6)
            {
                return "6 записей";
            } elseif ($cnt == 7)
            {
                return "7 записей";
            } elseif ($cnt == 8)
            {
                return "8 записей";
            } elseif ($cnt == 9)
            {
                return "9 записей";
            } elseif (($cnt >= 10) && ($cnt <= 20))
            {
                return $cnt." записей";
            } elseif ($cnt%10 == 1)
            {
                return $cnt." запись";
            } else
            {
                return $cnt." записей";
            }
        }

    Было найдено в одном из проектов.

    Rpsl, 30 Марта 2010

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

    +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
    lstCmsObject = OpenCms.getOrgUnitManager().getGroups(obj, "/", true);
                                
                                for (int i = 0; i < lstCmsObject.size(); i++)
                                {
                                	lstUnits.add(new Units(lstCmsObject.get(i).getDisplayName(obj, Locale.US).replaceAll("Users from ","").replaceAll("[a-zA-Z]*","").replaceAll("[(/)]+",""),lstCmsObject.get(i).getOuFqn()));
                                }
                                
                                for (int i = 0; i < lstCmsObject.size(); i++) {
    		                for (int j = 0; j < lstCmsObject.size(); j++) {
    		                    if (lstUnits.get(i).GetName().compareTo(lstUnits.get(j).GetName())<0) {
    		                        Collections.swap(lstUnits, i, j);
    		                    }
    		                }
    		            }

    des-1008d, 30 Марта 2010

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