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

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

    +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
    //
    		switch (cwin->cpref->shuffle) {
    			case TRUE:
    				last = g_list_last(cwin->cstate->rand_track_refs);
    				if ((!cwin->cstate->curr_rand_ref) || (last && (cwin->cstate->curr_rand_ref == last->data))){
    					path = get_next_unplayed_random_track(cwin);
    					if (!path)
    						rand_unplayed = TRUE;
    				}
    				else path = get_next_random_ref_track(cwin);
    				break;
    			case FALSE:
    				path = get_next_sequential_track(cwin);
    				if (!path) seq_last = TRUE;
    				break;
    			default:
    				break;
    		}

    буль...

    rat4, 21 Апреля 2012

    Комментарии (1)
  3. Куча / Говнокод #10002

    +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
    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
    procedure interpretation;
    var
    s,f:string;
    i,m,v:integer;
    
    begin
    s:=#0;
    
    for I:=0 to form9.Memo2.Lines.Count-1 do begin
      s:=form9.Memo2.Lines.Strings[i];//ïðîñìîòð ñòðîê èäåò
      //ñâåðõó âíèç
    
      if s='hex' then hex;
      if s='acsii' then acsii;
    
      if (s[1]='a') and (s[2]='d') and (s[3]='d') then begin
      form9.Edit6.Text:=s[5];
      form9.Edit5.Text:=s[7];
      peredsim;
      end;
    
      if (s[1]='s') and (s[2]='a') and (s[3]='m') then begin
      form9.Edit2.Text:=s[5];
      form9.Edit4.Text:=s[7];
      samsimbyl;
      end;
    
      if (s[1]='d') and (s[2]='e') and (s[3]='l') then begin
      form9.Edit3.Text:=s[5];
      for v:=1 to length(s) do
      deletesimbyl;
      end;
    
      if (s[1]='d') and (s[2]='e') and (s[3]='l') and (s[4]='s') then begin
      form9.Edit3.Text:=s[6];
      dels;
      end;
    
      if (s[1]='i') and (s[2]='n') and (s[3]='f') then begin
      form9.Memo1.Text:=s[5]+form9.Memo1.Text;
      end;
    
      if (s[1]='f') and (s[2]='n') and (s[3]='i') then begin
      form9.Memo1.Text:=form9.Memo1.Text+s[5];
      end;
    
      if (s[1]='p') and (s[2]='h') and (s[3]='e') then RapsrRedel;
    
    
      if (s[1]='n') and (s[2]='a') and (s[3]='b') then PerstNO;
    
    
      if (s[1]='a') and (s[2]='t') and (s[3]='s') then acsiitosim;
      if (s[1]='h') and (s[2]='t') and (s[3]='s') then hextosim;
      if (s[1]='h') and (s[2]='t') and (s[3]='a') then hextoacsii;
      if (s[1]='a') and (s[2]='t') and (s[3]='h') then acsiitohex;
    end;
    end;

    Нужно было быстро накодить интерпретатор, которым никто пользоваться не будет, кроме собственно автора программы, для создания простеньких скриптов (сами понимаете семантический анализатор писать, в данном случае не улыбалось). Потому получился такой МегОАдЪовый говнокод!

    Kerny, 21 Апреля 2012

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

    +71

    1. 1
    2. 2
    Calendar calendar = new GregorianCalendar();
    calendar.setTime(new Date(System.currentTimeMillis()));

    Eyeless, 19 Апреля 2012

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

    +155

    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
    var d = new Date();
        dom = d.getDate();
        month = d.getMonth();
        year = d.getYear();
        if (year < 2000) year = year - 100;
        else year = year - 2000;
    
        if (year == 12 && month == 3)
            days = 26 - dom;
        else 
            days = 0;
        if (days < 0) days = 0;
        if (days < 10) days = '0' + days.toString();
    
    
    var base = 'http://ubuntu.ru/media/countdown/1204_1/';
    
    document.write('<a href="http://ubuntu.ru/"><img id="countdownimage" src="'+base+days+'.png" width="180" height="150" border="0" alt="Ubuntu 12.04 LTS" title="Ubuntu 12.04 LTS - Уже скоро!"></a>');
    //document.write('<a href="http://ubuntu.ru/get"><img id="countdownimage" src="'+base+'here.png" width="180" height="150" border="0" alt="Ubuntu 12.04 LTS" title="Ubuntu 12.04 LTS - Уже здесь!"></a>');

    http://ubuntu.ru/media/countdown/display.js

    хуита, 18 Апреля 2012

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

    +72

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    String displayName = report.getDisplayName();
                displayName.replace(
                        this.periodStartDateParamName,
                        this.getPeriodStartDateStr() );
                displayName.replace(
                        this.getPeriodEndDateParamName(),
                        this.getPeriodEndDateStr() );
                report.setDisplayName( displayName );

    Имитация бурной деятельности по замене подстрок.

    victor-homyakov, 17 Апреля 2012

    Комментарии (1)
  7. JavaScript / Говнокод #9962

    +152

    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
    function sendForm() {
      var checksrole = document.getElementsByName("role");
      var i = 0, f = 0;
      while (f == 0 && i < checksrole.length) {
        if (checksrole[i].checked == true) {
          f = 1;
        }
        i++;
      }
      if (f == 0) {
        WindowUtils.popUpDialog("Пожалуйста, выберите роль пользователя", "WARN");
        return false;
      }
      return true;
    }

    Автор не догадывается о существовании типа boolean, о говорящих именах функций, о досрочном выходе из цикла и о возможностях используемых фреймворков (на странице использованы одновременно YUI - для вывода окна сообщения и Prototype - для отправки AJAX-запроса).

    victor-homyakov, 16 Апреля 2012

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

    +117

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    static double E( double epsilon )
    {
    	int n = 1, nf = 1;
    	double e = 0;
    	while (Math.Abs(e - Math.E) > epsilon)
    	{
    		e += 1.0 / nf;
    		nf *= n;
    		n++;
    	}
    	return e;
    }

    Вычисление числа e как суммы обратных факториалов. По мотивам реальных событий.

    Steve_Brown, 16 Апреля 2012

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

    +153

    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
    <option value="0" 
    
    <?
    	if($_SESSION['ttype'] == 0){ echo "SELECTED"; }
    	echo ">Подключение\n<option value=\"0last\" ";
    	if($_SESSION['ttype'] == '0last'){ echo "SELECTED"; }
    	echo ">История - Подключение\n<option value=\"1\" ";
    	if($_SESSION['ttype'] == 1){ echo "SELECTED"; }
    	echo ">Саппорт\n<option value=\"1last\" ";
    	if($_SESSION['ttype'] == '1last'){ echo "SELECTED"; }
    	echo ">История - саппорт\n<option value=\"all\" ";
    	if($_SESSION['ttype'] == 'all'){ echo "SELECTED"; }
    ?>
    				>Все
    			</select>

    Вывод селекта для выбора типа заявки. 0.001% сочно наговнокоженного проекта

    VeroLom, 10 Апреля 2012

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

    +114

    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
    if (FindNumber.Text.Length > 0)
            {
                string Num = FindNumber.Text;
                FindNom FN=new FindNom();
                Num = FN.ReplFindNumer(Num);
                if (Num != null && Num.Length > 0)
                {
                    StringBuilder sb = new StringBuilder(Num.Length);
                    foreach (char c in Num)
                    {
                        if (Char.IsControl(c) == true)
                            continue;
                        sb.Append(c);
                    }
                    Num = sb.ToString();
                }

    я пришел работать в фирму на развитие проекта интернет магазина, в ней уже работает программист, работает 6 лет!
    я открыл его код и увидел ЭТО. причем чувак щеки от важности раздувает

    t13ka, 04 Апреля 2012

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

    +161

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    void convert_bglfile(std::string infile, std::string source_charset, std::string target_charset)
    {
        std::string outfile;
        const char *p = infile.c_str();
        const char *p1 = strrchr(p, '.');
        if (p1) {
            outfile.assign(p, p1-p);
        } else {
            outfile = infile;
        }
    ...

    Из опенсорсного словаря StarDict. Товарисч на форуме написал, что не комилируется - не иклюдился cstring. А там такое :o

    myaut, 03 Апреля 2012

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