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

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

    +162

    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
    if ($_FILES['upfile']['size'] > 0) {
                $fname = $_FILES['upfile']['name'];
                $fcat = $_POST['category'];
                $ext = explode(".", $fname);
                if ($ext[1] == 'txt') {
                    if (!file_exists("$fcat/$fname")) {
                        if ((move_uploaded_file($_FILES['upfile']['tmp_name'], "$fcat/$fname"))) {
                            chmod("$fcat/$fname", 0777);
                            echo 'Текстовой файл успешно загружен! <br />';
                            echo '<a href="index.php?file=' . $fname . '&kat=' . $fcat . '&view=2">Посмотреть</a>';
                        } else {
                            echo 'Ошибка прикрепления файла<br />';
                            echo '<a href="index.php?kat=' . $fcat . '&view=1">Назад</a>';
                        }
                    } else {
                        echo 'Такой файл уже существует<br />';
                        echo '<a href="index.php?kat=' . $fcat . '&view=1">Назад</a>';
                    }
                } else {
                    echo 'Для загрузки доступны лишь файлы, с расширением .txt<br />';
                    echo '<a href="index.php?kat=' . $fcat . '&view=1">Назад</a>';
                }
            } else {
                echo 'Недопустимый размер файла<br />';
                echo '<a href="index.php?kat=' . $fcat . '&view=1">Назад</a>';
            }

    WAP-ENGINE
    Мега зашита при опланде :D

    lugaro, 22 Апреля 2010

    Комментарии (26)
  3. SQL / Говнокод #2978

    −180.2

    1. 1
    SELECT ((SELECT COUNT(*) FROM `books` WHERE `author` = '?') + (SELECT COUNT(*) FROM `magazins` WHERE `author` = '?')));

    не многовато ли селектов?:))
    вместо '?' пхпшный код ставит значение.

    litrumb, 09 Апреля 2010

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

    −364.8

    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
    Процедура ДействияФормыСформировать(Кнопка)
    	Запись = Новый Структура;
    	Запись.Вставить("Номер",);
    	Запись.Вставить("ФизЛицо",);
    	Запись.Вставить("ТабНомер",);
    
    	Запись.Вставить("д1",);
    	Запись.Вставить("д2",);
    	Запись.Вставить("д3",);
    	Запись.Вставить("д4",);
    	Запись.Вставить("д5",);
    	Запись.Вставить("д6",);
    	Запись.Вставить("д7",);
    	Запись.Вставить("д8",);
    	Запись.Вставить("д9",);
    	Запись.Вставить("д10",);
    	Запись.Вставить("д11",);
    	Запись.Вставить("д12",);
    	Запись.Вставить("д13",);
    	Запись.Вставить("д14",);
    	Запись.Вставить("д15",);
    	Запись.Вставить("д16",);
    	Запись.Вставить("д17",);
    	Запись.Вставить("д18",);
    	Запись.Вставить("д19",);
    	Запись.Вставить("д20",);
    	Запись.Вставить("д21",);
    	Запись.Вставить("д22",);
    	Запись.Вставить("д23",);
    	Запись.Вставить("д24",);
    	Запись.Вставить("д25",);
        	Запись.Вставить("д26",);
    	Запись.Вставить("д27",);
    	Запись.Вставить("д28",);
    	Запись.Вставить("д29",);
    	Запись.Вставить("д30",);
        	Запись.Вставить("д31",);

    Не ожидал от своего коллеги такого говнокода :) Хорошо, что в месяце не 100 дней ;_)
    Данный код можно заменить
    Для й = 1 По 31 Цикл
    Запись.Вставить("д" + Строка(й));
    КонецЦикла;

    tiger_x, 06 Апреля 2010

    Комментарии (26)
  5. C++ / Говнокод #2465

    +50.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
    map<string, int> M;
    ...
    M["one"] = 1;
    M["two"] = 2;
    M["google"] = 1e100;
    ...
    // найдём сумму всех значений --- т.е. всех правых частей 
    // пар <string, int>
    int r = 0;
    tr(M, it) {
       r += it->second; 
       // (*it).first == [string], (*it).second == [int]
    }

    и это на сайте обучения программирования!!!
    http://informatics.mccme.ru/moodle/mod/book/view.php?id=492&chapterid=216

    Novi4oK, 21 Января 2010

    Комментарии (26)
  6. Pascal / Говнокод #2354

    +102

    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
    begin
      tru:=false;
      if    tru=false then
      begin
        ObrMatritsa(Sigm,Sigm_transp);
        tru:=true;
        det:=abs(Determinant(Sigm));
        if det=0 then
        begin
          ShowMessage('Determinant = 0');
          tru:=false;
          Application.Terminate;
          exit;
        end;
        //if  det=0 then begin result:=0 ; exit end;
        sum:=1/sqrt(power(2*pi,kol_prizn)*det* exp(Mas));
        if  sum=0 then result:=0 ;
      end else exit;
    end;

    TAX, 30 Декабря 2009

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

    +922

    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
    int proverka_na_chislo(string str){
      int l=0;
      for(unsigned int i=0; i<str.length();i++) {
       if(str.compare(i,i+1,"0")!=0){
         if(str.compare(i,i+1,"1")!=0){
           if(str.compare(i,i+1,"2")!=0){
             if(str.compare(i,i+1,"3")!=0){
               if(str.compare(i,i+1,"4")!=0){
                 if(str.compare(i,i+1,"5")!=0){
                   if(str.compare(i,i+1,"6")!=0){
                     if(str.compare(i,i+1,"7")!=0){
                       if(str.compare(i,i+1,"8")!=0){
                          if(str.compare(i,i+1,"9")!=0){
                            throw std::invalid_argument("invalid argument\n");
                            l=-1;
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
      return l;
    }

    Проверка на число.

    LocalStorm, 03 Декабря 2009

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

    +66.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    PChar GetFileContent(PChar FileName)
    {
    ...
    };
    
    static inline signed int GetFileSize(PChar FileName)
    {
      return(((signed int)(strlen(GetFileContent(FileName)))));
    };

    Всё гениальное - просто...

    Говногость, 04 Сентября 2009

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

    +133

    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
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    //рекурсивная процедура создающая структуру меню
    byte form_hash(phasharray vrarr, WORD* ni, byte* ne)
    {
    	byte ct=MainMenu[(*ni)].numSubMenus, ict;
    	phasharray	vrarrcr;
    
    	if((*ni)++==0) pmain=vrarr; // если первый проход - запоминаем ссылку на главное меню
    	for (ict=0; ict<ct; ict++)
    	{
    		vrarr->hash[ict].pitem=(tmenuitem*)RTKGetBuffer(&menuPool);
    		//инициализация строки элемента
    		scopy0(((*((*vrarr).hash[ict].pitem)).menustr), MainMenu[*ni].nameMenu);
    		if (MainMenu[*ni].numSubMenus!=0)
    		{
    			(*((*vrarr).hash[ict].pitem)).pnextlev=RTKGetBuffer(&hashMenuPool);// создание хэша
    			vrarrcr=(phasharray)(*((*vrarr).hash[ict].pitem)).pnextlev;//вводим новую переменную для облегчения доступа к созданной структуре
    			(*vrarr).hash[ict].quantity=(byte)MainMenu[*ni].numSubMenus;//запоминаем количество элементов в меню уровнем выше
    			(*vrarrcr).pPrevLev=vrarr; // ссылка на предыдущий элемент
    			(*((*vrarr).hash[ict].pitem)).fpmenu=true;
    			if (MainMenu[*ni].numSubMenus==MENU_FUNC) // вызов процедуры динамического формирования меню
    			{
    				menupr_params.vrarr=vrarrcr;
    				menupr_params.phashprev=vrarr;
    				menupr_params.ni=ni;
    				menupr_params.ne=ne;
    				menupr_params.ict=ict;
    				(MainMenu[*ni].pproc)(); 
    				(*ni)++;
    			} else 
    			{
    				if(MainMenu[*ni].pproc) // если исключение (перед входом в подменю необходимо выполнить функцию)
    				{
    					changeArr[(*ne)++]=vrarrcr;
    					(*((*vrarr).hash[ict].pitem)).pexec=MainMenu[*ni].pproc;
    					(*((*vrarr).hash[ict].pitem)).fpmenu=false;
    				};
    				// исправляем значение элементов
    				(*(vrarr)).hash[ict].quantity=form_hash(vrarrcr, ni, ne);
    			};
    			// проверка сформированного меню
    			switch ((*(vrarr)).hash[ict].quantity)
    			{
    			case MENU_NO: // нет подменю
    				// освободить эл-т
    				RTKFreeBuffer(&hashMenuPool, vrarrcr); 
    				(*((*(vrarr)).hash[ict].pitem)).pexec=*menu_refresh;
    				(*((*(vrarr)).hash[ict].pitem)).fpmenu=false;
    				break;
    			case MENU_NOEL: // не формировать эл-т
    				// освободить эл-т
    				RTKFreeBuffer(&hashMenuPool, vrarrcr); 
    				RTKFreeBuffer(&menuPool, vrarr->hash[ict].pitem);
    				ict--;
    				ct--;
    				break;
    			case MENU_FUNC: // нет подменю, нормальная функция
    				RTKFreeBuffer(&hashMenuPool, vrarrcr); 
    				(*(vrarr)).hash[ict].quantity=0; 
    				//(*((*vrarr).hash[ict].pitem)).fpmenu=false;
    				break;
    			}
    		} else // заполнение элемента
    		{
    			(*((*vrarr).hash[ict].pitem)).pexec=MainMenu[*ni].pproc;
    			(*((*vrarr).hash[ict].pitem)).fpmenu=false;
    			(*ni)++;
    		};
    	};
    	return ct;
    };

    Эх, бурная была молодость :-)

    Barmaglot, 04 Сентября 2009

    Комментарии (26)
  10. Куча / Говнокод #1311

    +73

    1. 001
    2. 002
    3. 003
    4. 004
    5. 005
    6. 006
    7. 007
    8. 008
    9. 009
    10. 010
    11. 011
    12. 012
    13. 013
    14. 014
    15. 015
    16. 016
    17. 017
    18. 018
    19. 019
    20. 020
    21. 021
    22. 022
    23. 023
    24. 024
    25. 025
    26. 026
    27. 027
    28. 028
    29. 029
    30. 030
    31. 031
    32. 032
    33. 033
    34. 034
    35. 035
    36. 036
    37. 037
    38. 038
    39. 039
    40. 040
    41. 041
    42. 042
    43. 043
    44. 044
    45. 045
    46. 046
    47. 047
    48. 048
    49. 049
    50. 050
    51. 051
    52. 052
    53. 053
    54. 054
    55. 055
    56. 056
    57. 057
    58. 058
    59. 059
    60. 060
    61. 061
    62. 062
    63. 063
    64. 064
    65. 065
    66. 066
    67. 067
    68. 068
    69. 069
    70. 070
    71. 071
    72. 072
    73. 073
    74. 074
    75. 075
    76. 076
    77. 077
    78. 078
    79. 079
    80. 080
    81. 081
    82. 082
    83. 083
    84. 084
    85. 085
    86. 086
    87. 087
    88. 088
    89. 089
    90. 090
    91. 091
    92. 092
    93. 093
    94. 094
    95. 095
    96. 096
    97. 097
    98. 098
    99. 099
    100. 100
    program test;
    uses crt;
    label ww,1,2,ww2,ee,ee2,rr,rr2,tt,tt2,tt3,yy,yy2,yy3,uu,uu2,uu3,ii,ii2,ii3,ii4,oo,oo2,oo3,oo4,00,z,x,c,v;
    var q,q2,w,e,r,t,w2,e2,r2,t2,t3,y,y2,y3,u,u2,u3,i,i2,i3,i4,o,o2,o3,o4:real;
    begin
    1:clrscr;
    textcolor(4);
    writeln('++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++');
    textcolor(2);
    writeln('+Если вы отвечаете "ДА",то нажимайте "1" ,а если "НЕТ",то "0"+ ');
    textcolor(4);
    writeln('++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++');
    writeln;
    textcolor(2);
    writeln('Ответьте пожалуйста на следующие вопросы:');
    writeln('*****************************************');
    textcolor(8);
    writeln('Вы помните всю таблицу умножения?');
    read(q);
    if q=1 then begin writeln('Вы давно были на рок-концерте?');read(w);goto ww end;
    if q=0 then begin writeln('Вы играете в волейбол?');read(w2);goto ww2 end;
    ww:if w=1 then begin writeln('Вы играете в волейбол?');read(w2);goto ww2 end;
    if w=0 then begin writeln('Вы йог?');read(e);goto ee end;
    ww2:if w2=1 then begin writeln('Вы летали на истребителе?');read(e2);goto ee2 end;
    if w2=0 then begin writeln('Вы йог?');read(e);goto ee end;
    ee:if e=1 then begin writeln('Вы играете в очко?');read(r2);goto rr2 end;
    if e=0 then begin writeln('У вас часто болит голова?');read(r);goto rr end;
    ee2:if e2=1 then begin writeln('У вас часто болит голова?');read(r);goto rr end;
    if e2=0 then begin writeln('Вы играете в очко?');read(r2);goto rr2 end;
    rr:if r=1 then begin writeln('У вас смуглая кожа?');read(t);goto tt end;
    if r=0 then begin writeln('У вас есть загородный дом?');read(t2);goto tt2 end;
    rr2:if r2=1 then begin writeln('Вы часто лежите в больнице?');read(t3);goto tt3 end;
    if r2=0 then begin writeln('У вас часто болит голова?');read(r);goto rr end;
    tt:if t=1 then begin writeln('У вас есть загородный дом?');read(t2);goto tt2 end;
    if t=0 then begin writeln('В вашем подъезде кодовый замок?');read(y);goto yy end;
    tt2:if t2=1 then begin writeln('Вы часто лежите в больнице?');read(t3);goto tt3 end;
    if t2=0 then begin writeln('В вашем подъезде кодовый замок?');read(y);goto yy end;
    tt3:if t3=1 then begin writeln('Телесериалы бывают интересными?');read(y3);goto yy3 end;
    if t3=0 then begin writeln('Вы пишете роман?');read(y2);goto yy2 end;
    yy:if y=1 then begin writeln('Вы знаете что такое "дежа вю"?');read(u2);goto uu2 end;
    if y=0 then begin writeln('Вам всегда жалко бездомных собак?');read(u);goto uu end;
    yy2:if y2=1 then begin writeln('В вашем подъезде кодовый замок?');read(y);goto yy end;
    if y2=0 then begin writeln('Телесериалы бывают интересными?');read(y3);goto yy3 end;
    yy3:if y3=1 then begin writeln('Вы знаете что такое "дежа вю"?');read(u2);goto uu2 end;
    if y3=0 then begin writeln('В детстве вы играли в индейцев?');read(u3);goto uu3 end;
    uu:if u=1 then begin writeln('Вы любите варёную рыбу?');read(i);goto ii end;
    if u=0 then begin writeln('Вы знаете что такое ДЕЖА ВЮ ?');read(u2);goto uu2 end;
    uu2:if u2=1 then begin writeln('Вы любите вареную рыбу?');read(i);goto ii end;
    if u2=0 then begin writeln('В детстве вы играли в индейцев?');read(u3);goto uu3 end;
    uu3:if u3=1 then begin writeln('У вас отключена горячая вода?');read(i4);goto ii4 end;
    if u3=0 then begin writeln('Макароны вы едите с хлебом ?');read(i3);goto ii3 end;
    ii:if i=1 then begin writeln('Вы могли бы рекламировать бельё?');read(i2);goto ii2 end;
    if i=0 then begin writeln('Вы любите петь?');read(o);goto oo end;
    ii2:if i2=1 then begin writeln('Вы любите морковный сок?');read(o3);goto oo3 end;
    if i2=0 then begin writeln('Вы хотите стать гражданином США ?');read(o2);goto oo2 end;
    ii3:if i3=1 then begin writeln('Вам нравятся горы?');read(o4);goto oo4 end;
    if i3=0 then begin writeln('Вы любите морковный сок?');read(o3);goto oo3 end;
    ii4:if i4=1 then begin writeln('Вам нравятся горы?');read(o4);goto oo4 end;
    if i4=0 then begin writeln('Вы любите морковный сок?');read(o3);goto oo3 end;
    oo:if o=1 then goto z;
    if o=0 then goto x;
    oo2:if o2=1 then goto z;
    if o2=0 then goto x;
    oo3:if o3=1 then goto c;
    if o3=0 then begin writeln('Вы хотите стать гражданином США ?');read(o2);goto oo2 end;
    oo4:if o4=1 then goto v;
    if o4=0 then goto c;
    z:clrscr;
    textcolor(5);
    writeln('                ------ИТОГ: добрый ли вы человек?-------');
    textcolor(14);
    writeln('Вы случайно не мать Тереза?Бескрайняя ваша доброта...почти также как и глупость');
    writeln('Мало настрадались по своей вине?То ли ещё будет.');goto 00;
    x:clrscr;
    textcolor(5);
    writeln('                ------ИТОГ: добрый ли вы человек? -------');
    textcolor(14);
    writeln('Вы не безнадёжны.В детстве с вами явно занимались.Но годы делают своё дело-');
    writeln('ещё немного и от ваших лучших качеств не останется и следа.');goto 00;
    c:clrscr;
    textcolor(5);
    writeln('                -------ИТОГ: добрый ли вы человек?-------');
    textcolor(14);
    writeln('Брр... С вами близко лучше не знакомиться.Кошек вы конечно не мучаете ,но и на');
    writeln('гуманиста абсолютно не тянете.Надо за собой следить');goto 00;
    v:clrscr;
    textcolor(5);
    writeln('                ------ИТОГ: добрый ли вы человек? -------');
    textcolor(14);
    writeln('Бесцветность вашей натуры не оставляет места для разговоров о добре и зле');
    writeln('В вас всего по немногу-может это и есть идеальный вариант?');goto 00;
    00:writeln;
    ...
    writeln('Если вы хотите ещё раз протестироваться нажмите "1",если нет "0"');
    textcolor(4);
    writeln('-----------------------------------------------------------------');
    read(q2);
    if q2=1 then goto 1;
    if q2=0 then goto 2;
    2:end.

    Нашел свой старый код на паскале. Код был написан сразу после изучение конструкции if и goto. Было это в 10 классе, т.е. где-то лет 10 назад :))

    Программа является реализацией точной копии теста из журнала "МК-бульвар" того времени

    guest, 02 Июля 2009

    Комментарии (26)
  11. Куча / Говнокод #1205

    +125

    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
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    # /* [  <!-- */ include  <stdio.h> /*   \
      #{\
    `""""true \\#{"\n#"};           \
      \
    if [ -n "$ZSH_VERSION" ]; then           \
      \
      echo exec  echo I\'m a zsh script.; \
      \
    elif [ -n "$BASH_VERSION" ]; then        \
      \
      echo exec  echo I\'m a bash script.; \
    else  \
      echo exec  echo  I\'m  a sh  script.;    \
    fi`;  #\
    BEGIN{print"I'm a ", 0 ? "Ruby"  :"Perl",  " program.\n";  exit; } 
      #\
    %q~            
      
    set dummy =0; puts [list "I'm"  "a"  "tcl"  "script."]; exit   
      
    all: ; @echo "I'm a Makefile."          \
      #*/
    /*: */ enum {a, b};            \
      \
    static int c99(void) {         
      
    #ifndef __cplusplus /* bah */        
      
    unused1: if ((enum {b, a})0)          \
      (void)0;
    #endif           
      
    unused2:  return a;     \
    }  \
    static int trigraphs(void) {         \
      \
      return sizeof  "??!"  ==  2;    \
    }  \
    char X;               \
      \
    int main(void) {             \
      \
      struct X  {        \
      \
         char  a[2];    \
      };\
      if (sizeof(X)  !=  1) {       \
      \
    printf("I'm a C++ program (trigraphs %sabled).\n",         \
      \
       trigraphs()  ? "en"  : "dis");\
      \
    }else if (1//**/2
     
     
    )unused3 : { ; \
        printf("I'm a C program (C%s, trigraphs %sabled).\n", \
            c99() ? "89 with // comments" : "99", \
            trigraphs() ? "en" : "dis"); \
      } else { \
        printf("I'm a C program (C89, trigraphs %sabled).\n", \
            trigraphs() ? "en" : "dis"); \
      } \
      return 0; \
    } /*
    # \
    > main :: IO () -- -- \
    > main = putStr "I'm a Literate Haskell program.\n"
    # \
    ]>++++++++[<+++++++++>-]<+.>>++++[<++++++++++>-]<-.[-]>++++++++++ \
    [<+++++++++++>-]<-.>>++++[<++++++++>-]<.>>++++++++++[<++++++++++> \
    -]<- - -.<.>+.->>++++++++++[<+++++++++++>-]<++++.<.>>>++++++++++[ \
    <++++++++++>-]<+++++.<<<<+.->>>>- - -.<+++.- - -<++.- ->>>>>+++++ \
    +++++[<+++++++++++>-]<- - -.<<<<<.<+++.>>>.<<<-.- ->>>>+.<.<.<<.> \
    ++++++++++++++.[-]++++++++++"""`
    # \
    print "I'm a Python program."; """[-][--><html><head>
    <!--:--><title>I'm a HTML page</title></head><body>
    <!--:--><h1>I'm a <marquee><blink>horrible HTML</blink></marquee> page</h1>
    <!--:--><script language="Javascript">
    <!--: # \
    setTimeout( // \
      function () { // \
       document.body.innerHTML = "<h1>I'm a javascript-generated HTML page</h1>"; // \
      }, 10000); // \
    //-->
    </script><!--: \
    </body></html><!-- } # \
    say "I'm a Perl6 program", try { " ($?PUGS_VERSION)" } // "", "."; # """ # */
    #define FOO ]-->~

    Программа-полиморф hello world на 15 языках. Работает в C, C++, Haskell, Ruby, Python, Perl(x2), HTML, tcl, bash, zsh, make, bash и brainfuck.

    guest, 16 Июня 2009

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