1. Pascal / Говнокод #4553

    +111

    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
    if Z = 'Pr'
        then
          case N of
          1: Series1.Assign(Series33);
          2: Series2.Assign(Series33);
          3: Series3.Assign(Series33);
          4: Series4.Assign(Series33);
          5: Series5.Assign(Series33);
          end
        else
          if Z = 'ST'
            then
              case N of
              1: case Kolvo_Issledovanii of
                1: Series6.Assign(Series33);
                2: Series34.Assign(Series33);
                3: Series59.Assign(Series33);
                end;
    //пропущено 15 строк 
              5: case Kolvo_Issledovanii of
                1: Series10.Assign(Series33);
                2: Series38.Assign(Series33);
                3: Series63.Assign(Series33);
                end;
              end
            else
              if Z = 'TT'
                then
                  case N of
                  1:
                    case Kolvo_Issledovanii of
                    1: Series11.Assign(Series33);
                    2: Series39.Assign(Series33);
                    3: Series64.Assign(Series33);
                    end;
    //в том же духе, ещё 150 строк
    //вообще-то, в том же духе - весь код, около 5000 строк
    //...
    
    //в другом месте:
      Series1.Clear;
      Series2.Clear;
      Series3.Clear;
      Series4.Clear;
    //пропущено 75 строк
      Series80.Clear;
      Series81.Clear;
      Series82.Clear;
      Series83.Clear;
    //...
    
      Series1.Active:=false;
      Series2.Active:=false;
      Series3.Active:=false;
      Series4.Active:=false;
    //пропущено 75 строк
      Series80.Active:=false;
      Series81.Active:=false;
      Series82.Active:=false;
      Series83.Active:=false;

    Фтопку ООП!
    Такой вот диплом был сдан кем-то в прошлом году.

    maniac, 07 Ноября 2010

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

    +87

    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
    var
    s:string;
    function f(s:string):string;
    var
    i:integer;
    s1:string;
    begin
    s1:=#13#10's:=''';
    for i:=1to length(s)do begin
    if s[i]=#13then
    s1:=s1+'''#13#10+'#13#10+''''
    else if s[i]=''''then
    s1:=s1+''''''
    else if s[i]<>#10 then
    s1:=s1+s[i];
    f:=s1+''';'#13#10+
    's:=s+f(s);'#13#10+
    'write(s);'#13#10+
    'close(output);'#13#10+
    'end.';
    end;
    end;
    begin
    assign(output,'s.txt');
    rewrite(output);
    s:='var'#13#10+
    's:string;'#13#10+
    'function f(s:string):string;'#13#10+
    'var'#13#10+
    'i:integer;'#13#10+
    's1:string;'#13#10+
    'begin'#13#10+
    's1:=#13#10''s:='''''';'#13#10+
    'for i:=1to length(s)do begin'#13#10+
    'if s[i]=#13then'#13#10+
    's1:=s1+''''''#13#10+''#13#10+'''''''''#13#10+
    'else if s[i]=''''''''then'#13#10+
    's1:=s1+'''''''''''''#13#10+
    'else if s[i]<>#10 then'#13#10+
    's1:=s1+s[i];'#13#10+
    'f:=s1+'''''';''#13#10+'#13#10+
    '''s:=s+f(s);''#13#10+'#13#10+
    '''write(s);''#13#10+'#13#10+
    '''close(output);''#13#10+'#13#10+
    '''end.'';'#13#10+
    'end;'#13#10+
    'end;'#13#10+
    'begin'#13#10+
    'assign(output,''s.txt'');'#13#10+
    'rewrite(output);';
    s:=s+f(s);
    write(s);
    close(output);
    end.

    Нарыл свой высер на тему программы, выводящей свой текст.

    TarasB, 23 Октября 2010

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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    {$APPTYPE CONSOLE}var a:string; b:string; d:char;begin d:='''';
    b:='{$APPTYPE CONSOLE}var a:string; b:string; d:char;begin d:=';
    a:='writeln(b,d,d,d,d,a[25]);writeln(a[9],b[24],b[58],d,b,d,a[25]);writeln(b[23],b[24],b[58],d,a,d,a[25]);writeln(a);end.';
    writeln(b,d,d,d,d,a[25]);writeln(a[9],b[24],b[58],d,b,d,a[25]);writeln(b[23],b[24],b[58],d,a,d,a[25]);writeln(a);end.

    Это код-шутка - как раз для вечера пятницы :)
    можно запустить программу, скопировать то, что выведется на экран в Delphi, скомпилировать, запустить... и так до бесконечности.
    автора не знаю, есть еще 1 пример кода.

    ctm, 22 Октября 2010

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

    +112

    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
    procedure TfmConf_PA30.btnWritePAClick(Sender: TObject);
    begin
       if WriteByVariable(11,lbLog6) then begin
        if WriteByVariable(12,lbLog6) then begin
         if WriteByVariable(13,lbLog6) then begin
          if WriteByVariable(14,lbLog6) then begin
           if WriteByVariable(15,lbLog6) then begin
            if WriteByVariable(16,lbLog6) then begin
             if WriteByVariable(17,lbLog6) then begin
              if WriteByVariable(18,lbLog6) then begin
               if WriteByVariable(19,lbLog6) then begin
                if WriteByVariable(20,lbLog6) then begin
                 if WriteByVariable(21,lbLog6) then begin
                  if WriteByVariable(22,lbLog6) then begin
                   if WriteByVariable(23,lbLog6) then begin
                    if WriteByVariable(24,lbLog6) then begin
                     if WriteByVariable(25,lbLog6) then begin
                      if WriteByVariable(26,lbLog6) then begin
                       if WriteByVariable(27,lbLog6) then begin
                        if WriteByVariable(28,lbLog6) then begin
                         if WriteByVariable(29,lbLog6) then begin
                          if WriteByVariable(30,lbLog6) then begin
                           lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (30)');
                         end else
                          lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (29)');
                        end else
                         lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (28)');
                       end else
                        lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (27)');
                      end else
                       lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (26)');
                     end else
                      lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (25)');
                    end else
                     lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (24)');
                   end else
                    lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (23)');
                  end else
                   lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (22)');
                 end else
                  lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (21)');
                end else
                 lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (20)');
               end else
                lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (19)');
              end else
               lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (18)');
             end else
              lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (17)');
            end else
             lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (16)');
           end else
            lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (15)');
          end else
           lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (14)');
         end else
          lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (13)');
        end else
         lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (12)');
       end else
        lbLog6.Items.Add('Ошибка: Нет ожидаемого ответа от оборудования (11)');
    end;

    может циклом надо было? :)
    for i:=11 to 40 do...

    pethead, 22 Октября 2010

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

    +97

    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
    Program zadacha; 
    var 
       i,chislo,x,y,m,n:integer; 
    begin 
       while i<1 do begin 
       for x:=0 to chislo do begin 
       for y:=0 to chislo do begin 
       for m:=0 to chislo do begin 
       for n:=0 to chislo do begin 
       if (chislo=x*x*x+y*y*y) and (chislo=m*m*m+n*n*n) and (x<>m) and (x<>y) and (y<>m) and (y<>n) then i:=1 else chislo:=chislo+1; 
       end; 
       end; 
       end; 
       end; 
       end; 
       Writeln(chislo); 
    end.

    Вот так находят "минимальное натуральное число представимое двумя различными способами в виде суммы кубов двух натуральных чисел"

    kolhoz, 20 Октября 2010

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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    var boll : boolean;
    //много говна
    If boll = true then boll := false
    else boll := true;

    Увидел как-то у одного студента. Кодомартышковость обыкновенная

    ZLOvar, 18 Октября 2010

    Комментарии (29)
  7. Pascal / Говнокод #4377

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    program test;
    var i : boolean;
    begin
    i := true;
    if i then while true do Writeln('WAR IS TRUE!!!')
    else Writeln('FALSE');
    end.

    Pascal...

    Мартин, 17 Октября 2010

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

    +144

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    Program upra;
    var s:string;
    i:integer;
    begin
    writeln ('vvesti stroku');
    readln(s);
    k:=0;
    for i:=1 to length(s) do
    if s='a' then
    s:='*';
    writeln(k);
    end

    Pascal. Меняем символ "а" на звёздочку. Школота детектед!

    ZLOvar, 13 Октября 2010

    Комментарии (7)
  9. Pascal / Говнокод #4321

    +90

    1. 1
    2. 2
    if DirectoryExists(ExtractFilePath(Application.ExeName)+'Folder')=false then
    CreateDir(ExtractFilePath(Application.ExeName)+'Folder');

    Мартин, 09 Октября 2010

    Комментарии (13)
  10. Pascal / Говнокод #4273

    +111

    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
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    procedure TForm1.Timer1Timer(Sender: TObject);
    function UpTime(sf:string):boolean;
    var time:string;
     t:textfile;
    begin
     if form1.MaskEdit5.Text<>'' then
     if Findmas_u(255,0,sf)<0 then
     begin UpTime:=false;exit;end;
     if not FileExists(sf) then
     begin UpTime:=false;exit;end;
     time:=DateUpdating_u(sf);
     if time<>'' then
     begin
     try
     assignfile(t,ExtractFilePath(form1.MaskEdit1.Text)+ChangeFileExt(ExtractFileName(sf),'.tim'));
     rewrite(t);
     writeln(t,time);
     closefile(t);
     except UpTime:=false;exit;end;
     end;
     UpTime:=true;
    end;
    var x,y,i1,i2,i3,xf,yf:integer;
     sf,id,ff:string;
     b:boolean;
    begin
     form1.Timer1.Enabled:=not form1.Timer1.Enabled;
     try
     form1.ProgressBar1.Position:=0;
     application.ProcessMessages;
     masopt_u(254,x,y);
     if form1.MaskEdit1.Text='' then
     form1.BitBtn3.Click else
     if (DateUpdating_u(form1.MaskEdit1.Text)<>DateUpdatingMas_u(254))or(y>0) then
     begin
     if form1.MaskEdit3.Text<>'' then
     if form1.CheckBox1.Checked then
     sf:=TJ7PassAutentikR_u(form1.MaskEdit3.Text,form1.MaskEdit2.Text) else
     sf:=TJ7PassAutentik_u(form1.MaskEdit3.Text,form1.MaskEdit2.Text) else
     sf:=form1.MaskEdit2.Text;
     if not OpenOneNu_u(form1.MaskEdit1.Text,'read:PSQL-Srv'+booltostr(form1.RadioButton2.Checked),3) then
     begin
     DeleteFile(ChangeFileExt(form1.MaskEdit1.Text,'.tmp'));
     form1.RichEdit1.Lines.Add('('+datetostr(date)+' '+timetostr(time)+') Превышен интервал времени доступа.');
     OpenOneNu_u(form1.MaskEdit1.Text,'read:PSQL-Srv'+booltostr(form1.RadioButton2.Checked),3);
     end;
     i1:=TJ7ReadMas_u(254,form1.MaskEdit1.Text,sf);
     CloseOneNu_u(form1.MaskEdit1.Text,'read:PSQL-Srv'+booltostr(form1.RadioButton2.Checked));
     if (i1<>0)and(i1<>11) then
     begin
     form1.RichEdit1.Lines.Add('('+datetostr(date)+' '+timetostr(time)+') Ошибка чтения команд, код: '+inttostr(i1)+'.');
     closemas_u(254);
     initmas_u(254,2,0);
     TJ7CreateMas_u(254,form1.MaskEdit1.Text,sf,false,false,false,false,false);
     closemas_u(254);
     form1.Timer1.Enabled:=not form1.Timer1.Enabled;
     exit;
     end;
     masopt_u(254,x,y);id:='';
     if not form1.RadioButton1.Checked then
     begin
     for i1:=0 to y-1 do
     if (masr_u(254,1,i1)<>'') then
     if ((form1.RadioButton2.Checked)and(ord(masr_u(254,1,i1)[1])mod 2=0))or
     ((form1.RadioButton3.Checked)and(ord(masr_u(254,1,i1)[1])mod 2<>0))then
     begin id:=masr_u(254,1,i1);break;end;
     end else id:=masr_u(254,1,0);
     if (id='')or(y=0) then
     begin
     if RTime_u(strtodatetime(DateUpdatingMas_u(254)),date+time)<1200 then
     closemas_u(254);
     form1.Timer1.Enabled:=not form1.Timer1.Enabled;
     exit;
     end;
     if y>0 then form1.StaticText13.Caption:='в обработке';
     application.ProcessMessages;
     form1.RichEdit1.Lines.Add('('+datetostr(date)+' '+timetostr(time)+'/Старт):'+id);
     if form1.CheckBox3.Checked then
     begin
     masopt_u(255,xf,yf);
     ff:=ExtractFilePath(form1.MaskEdit1.Text)+id+'.tj7';
     masw_u(255,0,yf,ff);
     end;
     application.ProcessMessages;
     if form1.MaskEdit6.Text<>'' then
     PsevdoSQL_u(form1.MaskEdit6.Text);
     for i1:=0 to y-1 do
     if masr_u(254,1,i1)=id then
     begin
     if form1.CheckBox3.Checked then
     begin
     i2:=pos('TId',masr_u(254,0,i1));
     if i2>0 then
     masw_u(254,0,i1,copy(masr_u(254,0,i1),1,i2-1)+id+copy(masr_u(254,0,i1),i2+3,255));
     end;
    // *** И дальше в том же духе

    Автор сего поделия, кусок которого приведён выше (привёл бы полностью, но там 160 строк), называет ЭТО "сервером распределённых вычислений" и "самой прогрессивной СУБД в мире, которая лучше всех этих ваших ораклов. При этом автор вроде как и не школьник...

    Vinny_the_POOH, 17 Сентября 2010

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