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

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

    +98

    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
    procedure TForm1.Timer1Timer(Sender: TObject);  //ПРОБЛЕМА ТУТ
    begin
    sec:=sec-1;
    ShowTime;     //показывать время
    
    If (sec=0) and (min=0) and(chas>0) then
    begin
    chas:=chas-1;
    min:=59;
    sec:=60;
    end;
    
    If (sec=0) and (min>0) and (chas=0) then
    begin
    min:=min-1;
    sec:=60;
    end;
    
    If (sec=0) and (min>0) and (chas>0) then
    begin
    min:=min-1;
    chas:=chas-1;
    sec:=60;
    end;
    
    
    If (chas=0) and (min=0) and (sec=0) then
    begin
    Timer1.Enabled:=false;
    Button1.Enabled:=True;
    Button2.Enabled:=False;
    Edit1.Enabled:=True;
    Edit2.Enabled:=True;
    Edit3.Enabled:=True;
    
    end;
    
    
    
    end;

    Дао создания таймера обратного отсчета.
    Канон первый: устаревшая и неудобная шестидесятиричная система.
    Комментарии и форматирование авторские.

    bugmenot, 08 Июня 2010

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

    +98

    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
    97. 97
    98. 98
    //это как бы сортировка приоритетов
    Try
    Prior1:=StrToInt(Edit1.Text);
    Prior2:=StrToInt(Edit2.Text);
    Prior3:=StrToInt(Edit3.Text);
    Prior4:=StrToInt(Edit4.Text);
    Prior5:=StrToInt(Edit5.Text);
    except
    ShowMessage('Íåâåðíî çàäàíû ïðèîðèòåòû');   exit;
    end;
    min1:=100;
    If prior1<min1 then begin min1:=prior1; nmin1:=1; end;
    If prior2<min1 then begin min1:=prior2; nmin1:=2; end;
    If prior3<min1 then begin min1:=prior3; nmin1:=3; end;
    If prior4<min1 then begin min1:=prior4; nmin1:=4; end;
    If prior5<min1 then begin min1:=prior5; nmin1:=5; end;
    min2:=100;
    If (prior1<min2)and(prior1>min1) then begin min2:=prior1; nmin2:=1; end;
    If (prior2<min2)and(prior2>min1) then begin min2:=prior2; nmin2:=2; end;
    If (prior3<min2)and(prior3>min1) then begin min2:=prior3; nmin2:=3; end;
    If (prior4<min2)and(prior4>min1) then begin min2:=prior4; nmin2:=4; end;
    If (prior5<min2)and(prior5>min1) then begin min2:=prior5; nmin2:=5; end;
    min3:=100;
    If (prior1<min3)and(prior1>min2) then begin min3:=prior1; nmin3:=1; end;
    If (prior2<min3)and(prior2>min2) then begin min3:=prior2; nmin3:=2; end;
    If (prior3<min3)and(prior3>min2) then begin min3:=prior3; nmin3:=3; end;
    If (prior4<min3)and(prior4>min2) then begin min3:=prior4; nmin3:=4; end;
    If (prior5<min3)and(prior5>min2) then begin min3:=prior5; nmin3:=5; end;
    min4:=100;
    If (prior1<min4)and(prior1>min3) then begin min4:=prior1; nmin4:=1; end;
    If (prior2<min4)and(prior2>min3) then begin min4:=prior2; nmin4:=2; end;
    If (prior3<min4)and(prior3>min3) then begin min4:=prior3; nmin4:=3; end;
    If (prior4<min4)and(prior4>min3) then begin min4:=prior4; nmin4:=4; end;
    If (prior5<min4)and(prior5>min3) then begin min4:=prior5; nmin4:=5; end;
    min5:=100;
    If (prior1<min5)and(prior1>min4) then begin min5:=prior1; nmin5:=1; end;
    If (prior2<min5)and(prior2>min4) then begin min5:=prior2; nmin5:=2; end;
    If (prior3<min5)and(prior3>min4) then begin min5:=prior3; nmin5:=3; end;
    If (prior4<min5)and(prior4>min4) then begin min5:=prior4; nmin5:=4; end;
    If (prior5<min5)and(prior5>min4) then begin min5:=prior5; nmin5:=5; end;
    
    //далее горы подобного кода (где-то 20-30 страниц):
    hile t<=60 do begin
    Application.ProcessMessages;
    
    t:=t+1;
    Sleep(100);
    
        If nmin1=1 then begin
    
        If t-tpi1=t1 then begin
        i1:=i1+1;
        datetime:=now;
    x1:=random(311)/10+29+random(10)/10;
    table1.Insert;
    table1.FieldByName('znachenie').AsFloat:=x1;
    table1.FieldByName('datchik').AsInteger:=1;
    table1.FieldByName('oshibka').AsBoolean:=False;
    table1.FieldByName('krit').AsBoolean:=False;
    table1.FieldByName('DateTime').AsDateTime:=Datetime;
    series1.AddXY(i1, x1, '',clred);
    if (x1>60)or(x1<30) then
    begin
    table1.FieldByName('oshibka').AsBoolean:=True;
      if (x1>60.5)or(x1<29.5) then begin
      table1.FieldByName('krit').AsBoolean:=True;
      Label1.Visible:=True;
      end;
    end;
    table1.Post;
    tpi1:=t;
    end; //end if
    
    end;
    If nmin1=2 then begin
    
       If t-tpi2=t2 then begin
       i2:=i2+1;
       datetime:=now;
    x2:=random(211)/10+9+random(10)/10;
    table1.Insert;
    table1.FieldByName('znachenie').AsFloat:=x2;
    table1.FieldByName('datchik').AsInteger:=2;
    table1.FieldByName('oshibka').AsBoolean:=False;
    table1.FieldByName('krit').AsBoolean:=False;
    table1.FieldByName('DateTime').AsDateTime:=Datetime;
    series2.AddXY(i2, x2, '',clgreen);
    if (x2>30)or(x2<10) then
    begin
    table1.FieldByName('oshibka').AsBoolean:=True;
      if (x2>30.5)or(x2<9.5) then begin
      table1.FieldByName('krit').AsBoolean:=True;
      Label1.Visible:=True;
      end;
    end;
    table1.Post;
    tpi2:=t;
    end;

    курсовая работа одного студента (идущего на красный диплом, кстати)

    GovnocoderJr, 25 Мая 2010

    Комментарии (22)
  4. C++ / Говнокод #3173

    +98

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    template<unsigned AxesQount, class Conten>
    const Vector<AxesQount, Conten> Vector<AxesQount, Conten>::operator-(void) const
    {
        return *this*-1.0;
    };
    
    template<unsigned AxesQount, class Conten>
    const Vector<AxesQount, Conten> Vector<AxesQount, Conten>::operator+(void) const
    {
        return *this;
    };

    Чужой велосипед. Пытался использовать в своём проекте, но передумал.

    Говногость, 07 Мая 2010

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

    +98

    1. 1
    dmauto.tout.FieldByName('nomer').AsString:=       inttostr(inc(strtoint(dmauto.tout.FieldByName('nomer').AsString)));

    max4d, 05 Мая 2010

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

    +98

    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
    static void CompressFile(string inFilename, 
                                 string outFilename)
        {
    
          FileStream sourceFile = File.OpenRead(inFilename);
          FileStream destFile = File.Create(outFilename);
    
          // Create the Compressed stream
          GZipStream compStream =
            new GZipStream(destFile, CompressionMode.Compress);
    
          // Write the data
          int theByte = sourceFile.ReadByte();
          while (theByte != -1)
          {
            compStream.WriteByte((byte)theByte);
            theByte = sourceFile.ReadByte();
          }
    
          // Clean it up
          sourceFile.Close();
          compStream.Close();
          destFile.Close();
        }

    Пример из книги "Microsoft .NET Framework 2.0 Application Development Foundation", официального пособия для подготовки к экзамену 70-536.
    Угадайте, почему "сжатые" файлы получаются больше несжатых.

    gecko, 02 Ноября 2009

    Комментарии (12)
  7. Си / Говнокод #1864

    +98

    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
    BOOL NewStartUsed()
    {
      if ((BOOL) -1 == bNewStartUsed) {
        bNewStartUsed = FALSE;
        bNewStartUsed = TRUE;
        int iVal = bNewStartUsed;
    
        if (GetConfigInt(&iVal, "NewStart", "Common", ConfigFile)) {
          bNewStartUsed = (0 != iVal);
        }
      }
      return bNewStartUsed;
    }

    просто но комментс...

    kubrinsky, 18 Сентября 2009

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

    +97.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
    if (aDebtor.Banknummer = '') then
        begin
            s := s + ',""'; {Banknummer}
        end
        else
        begin
            s := s + ',"'+TrimRight(Format('%-.10s',[aDebtor.Banknummer]))+'"'; {Banknummer}
        end;
        if (aDebtor.Gironummer = '') then
        begin
            s := s + ',""'; {postbankrekening}
        end
        else
        begin
            s := s + ',"'+TrimRight(Format('%-.10s',[aDebtor.Gironummer]))+'"'; {postbankrekening}
        end;

    Гениально... А можно мне такой же травы как у этих голландцев?

    И такое повторяется еще много раз.

    Drone, 26 Марта 2010

    Комментарии (0)
  9. C++ / Говнокод #1432

    +97.4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    int main()
    {
        ...
        return rand();
    }

    Иногда даже вылетают ошибки!

    guest, 28 Июля 2009

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

    +97.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
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    {1}
    if ((a='AC')or(a='CA')or(a='BD')or(a='DB'))and((b='AC')or(b='CA')or(b='BD')or(b='DB'))then write('YES') else
    if ((a='AC')or(a='CA')or(a='BC')or(a='CB'))and((b='AC')or(b='CA')or(b='BC')or(b='CB'))then write('YES') else
    if ((a='BC')or(a='CB')or(a='BD')or(a='DB'))and((b='BC')or(b='CB')or(b='BD')or(b='DB'))then write('YES') else
    if ((a='AB')or(a='BA')or(a='BD')or(a='DB'))and((b='AB')or(b='BA')or(b='BD')or(b='DB'))then write('YES') else
    if ((a='AC')or(a='CA')or(a='AB')or(a='BA'))and((b='AC')or(b='CA')or(b='AB')or(b='BA'))then write('YES') else
    if ((a='AC')or(a='CA')or(a='AD')or(a='DA'))and((b='AC')or(b='CA')or(b='AD')or(b='DA'))then write('YES') else
    if ((a='AD')or(a='DA')or(a='BD')or(a='DB'))and((b='AD')or(b='DA')or(b='BD')or(b='DB'))then write('YES') else
    if ((a='AC')or(a='CA')or(a='CD')or(a='DC'))and((b='AC')or(b='CA')or(b='CD')or(b='DC'))then write('YES') else
    if ((a='DC')or(a='CD')or(a='BD')or(a='DB'))and((b='DC')or(b='CD')or(b='BD')or(b='DB'))then write('YES') else
    if ((a='BC')or(a='CB')or(a='CD')or(a='DC'))and((b='BC')or(b='CB')or(b='CD')or(b='DC'))then write('YES') else
    if ((a='AD')or(a='DA')or(a='CD')or(a='DC'))and((b='AD')or(b='DA')or(b='CD')or(b='DC'))then write('YES') else
    if ((a='AB')or(a='BA')or(a='AD')or(a='DA'))and((b='AB')or(b='BA')or(b='DA')or(b='AD'))then write('YES') else
    if ((a='AB')or(a='BA')or(a='BC')or(a='CB'))and((b='AB')or(b='BA')or(b='BC')or(b='CB'))then write('YES') else
    {2}
    if ((a='A1C1')or(a='C1A1')or(a='B1D1')or(a='D1B1'))and((b='A1C1')or(b='C1A1')or(b='B1D1')or(b='D1B1'))then write('YES') else
    if ((a='A1C1')or(a='C1A1')or(a='B1C1')or(a='C1B1'))and((b='A1C1')or(b='C1A1')or(b='B1C1')or(b='C1B1'))then write('YES') else
    if ((a='B1C1')or(a='C1B1')or(a='B1D1')or(a='D1B1'))and((b='B1C1')or(b='C1B1')or(b='B1D1')or(b='D1B1'))then write('YES') else
    if ((a='A1B1')or(a='B1A1')or(a='B1D1')or(a='D1B1'))and((b='A1B1')or(b='B1A1')or(b='B1D1')or(b='D1B1'))then write('YES') else
    if ((a='A1C1')or(a='C1A1')or(a='A1B1')or(a='B1A1'))and((b='A1C1')or(b='C1A1')or(b='A1B1')or(b='B1A1'))then write('YES') else
    if ((a='A1C1')or(a='C1A1')or(a='A1D1')or(a='D1A1'))and((b='A1C1')or(b='C1A1')or(b='A1D1')or(b='D1A1'))then write('YES') else
    if ((a='A1D1')or(a='D1A1')or(a='B1D1')or(a='D1B1'))and((b='A1D1')or(b='D1A1')or(b='B1D1')or(b='D1B1'))then write('YES') else
    if ((a='A1C1')or(a='C1A1')or(a='C1D1')or(a='D1C1'))and((b='A1C1')or(b='C1A1')or(b='C1D1')or(b='D1C1'))then write('YES') else
    if ((a='D1C1')or(a='C1D1')or(a='B1D1')or(a='D1B1'))and((b='D1C1')or(b='C1D1')or(b='B1D1')or(b='D1B1'))then write('YES') else
    if ((a='B1C1')or(a='C1B1')or(a='C1D1')or(a='D1C1'))and((b='B1C1')or(b='C1B1')or(b='C1D1')or(b='D1C1'))then write('YES') else
    if ((a='A1D1')or(a='D1A1')or(a='C1D1')or(a='D1C1'))and((b='A1D1')or(b='D1A1')or(b='C1D1')or(b='D1C1'))then write('YES') else
    if ((a='A1B1')or(a='B1A1')or(a='A1D1')or(a='D1A1'))and((b='A1B1')or(b='B1A1')or(b='D1A1')or(b='A1D1'))then write('YES') else
    if ((a='A1B1')or(a='B1A1')or(a='B1C1')or(a='C1B1'))and((b='A1B1')or(b='B1A1')or(b='B1C1')or(b='C1B1'))then write('YES') else
    
    //оставшуюся часть я опустил из-за ее невместимости в 4000 символов.
    writeln('NO');
    end.

    Этот говнокод (полностью, а не этот говнокусок) по идее должен выискивать пересечения отрезков куба. Мы с другом поспорили, что я смоу написать прогу только с ifами, и олимпиадный сайт accepted ее.Он принял.

    Shprotbl, 11 Ноября 2009

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

    +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
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    if (!File.Exists(comboBox1.Text + ".pck"))
                {
                    MessageBox.Show("Файла " + comboBox1.Text + ".pck не существует!", "Ошибка");
                }
                else
                {
                    StreamWriter writer = new StreamWriter("Extract.bat");
                    writer.WriteLine("sPCK.exe -pw -x " + comboBox1.Text + ".pck" + Environment.NewLine + "del Extract.bat");
                    writer.Close();
                    System.Diagnostics.Process.Start("Extract.bat");
                    Thread.Sleep(1000);
                    if (File.Exists(comboBox1.Text + ".pck.files"))
                    {
                        //Lol
                    }
                    else
                    {
                        if (checkBox1.Checked)
                        {
                            System.Diagnostics.Process.Start(comboBox1.Text + ".pck.files");
                        }
                        else
                        {
                            //LoL
                        }
                    }
                }

    Решил я значить узнать почему рядом с одной из программ создается .bat файл

    skydev, 30 Января 2015

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