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

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

    −110

    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
    Dim num As Integer
        Dim inp As Integer
        Dim wrt As String
        Dim liv As Integer
    
    
    
        Sub Main()
            liv = 3
            Console.WriteLine("LIVES = " & liv)
    pl:
            If liv = 0 Then GoTo st
    
    
            num = Fix(Rnd() * 5)
    
            Console.WriteLine("ENTER NUMBER:")
            inp = Console.ReadLine()
            If inp < num Then
                Console.WriteLine("GREATER")
                liv = liv - 1
                Console.WriteLine("LIVES = " & liv)
                GoTo pl
    
            End If
    
            If inp > num Then
                Console.WriteLine("LESS")
    
                liv = liv - 1
                Console.WriteLine("LIVES = " & liv)
                GoTo pl
            End If
    
    
            If inp = num Then Console.WriteLine("YES!")
    st:
            Console.WriteLine("GAME OVER")
            Console.WriteLine("ENTER ANY NUMBER TO EXIT")
            inp = Console.ReadLine()
    
    
    
    
    
    
        End Sub

    Одна из моих первых "прог" на VB, написанная около 4х лет назад - "Угадай число".

    RaZeR, 21 Марта 2011

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

    +137

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    <Skript>
    <center><B>Счет $USERNAME$а:</B></center><br>
    <script type="text/javascript">
    p=<?if($POSTS$)?>$POSTS$ <?else?>0<?endif?>
    v=p*2
    document.writeln("<B> "+v+" </B>StalkerMoney.<br>");
    </script></skript>

    Увидел на форуме по JS, вот цитирую:
    "Я делаю проект по сталкеру в системе юКоз. Есть скрипт StalkerMoney. Сталкер мани образуются путем умножения количества сообщений на 2. Мне нужно оставить прибавление денег путем габивания постов, но добавить Редактор этих денег, на странице у каждого пользователя, что бы этот редактор был доступен только для администраторов, так же как и редактор счетчика сообщений. Вот сам недоработанный скрипт ... помогите пожалоста"

    vulkan, 21 Марта 2011

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

    +148

    1. 1
    preg_replace('/^(.*)\s(.*)$/i', '$1', $item['updated']);

    DrFreez, 20 Марта 2011

    Комментарии (8)
  5. Куча / Говнокод #6036

    +142

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    <tr>
            <td><img src=images/spacer.gif border=0 height=1 width=15></td>
            <td><img src=images/spacer.gif border=0 height=1 width=77></td>
            <td><img src=images/spacer.gif border=0 height=1 width=19></td>
            <td><img src=images/spacer.gif border=0 height=1 width=68></td>
            <td><img src=images/spacer.gif border=0 height=1 width=19></td>
            <td><img src=images/spacer.gif border=0 height=1 width=1></td>
    </tr>

    Ой ща я разгуляюсь!
    Работаю в колл-центре, это исходный код веб-морды панели звонков.
    Буду кидать куски потихоньку. Хотя там надо сразу все кидать.
    Вот так мы верстаем.

    7ion, 20 Марта 2011

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

    +165

    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
    function ChangePhoto(num, photo)
    {
        if (photo.className != 'photo_selected')
        {
        var image1 = document.getElementById("ctl00_MainContent_ProductInfo1_ctl00_AlternativePictures_Image1");
        var image2 = document.getElementById("ctl00_MainContent_ProductInfo1_ctl00_AlternativePictures_Image2");
        var image3 = document.getElementById("ctl00_MainContent_ProductInfo1_ctl00_AlternativePictures_Image3");
        var image4 = document.getElementById("ctl00_MainContent_ProductInfo1_ctl00_AlternativePictures_Image4");
        var image5 = document.getElementById("ctl00_MainContent_ProductInfo1_ctl00_AlternativePictures_Image5");
        var image6 = document.getElementById("ctl00_MainContent_ProductInfo1_ctl00_AlternativePictures_Image6");
        
        if (image1 != null) image1.className = 'photo_notselected';
        if (image2 != null) image2.className = 'photo_notselected';
        if (image3 != null) image3.className = 'photo_notselected';
        if (image4 != null) image4.className = 'photo_notselected';
        if (image5 != null) image5.className = 'photo_notselected';
        if (image6 != null) image6.className = 'photo_notselected';
        
        
        photo.className = 'photo_selected';
        Hide(0);
        setTimeout("ChangeSrc("+num+")", 300);
        setTimeout("ShowPhoto()", 400);
        }
    }

    Чо мне ща сказал? Цыклы мне ща сказал? Какие тенна цыклы, ыдисюданна!

    Строчки 22, 23 активируют какое-то хитрожопое многопоточное отображение фоток со взаимными блокировками и ожиданием друг друга по таймеру с интервалами в 10 мс.

    telnet, 11 Марта 2011

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

    +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
    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
    #include <stdio.h>
    #include <stdlib.h>
    #include <unistd.h>
    #include <ctime>
    #include <signal.h>
    #include <sys/time.h>
    #include <fcntl.h>
    #include <termios.h>
    #include <time.h>
    
    #include <iostream>
    
    using namespace std;
    
    struct termios savetty;
    struct termios tty;
    char num[]="0123456789QWERTYUIOPASDFGHJKLZXCVBNM";
            char let[]="!\",#$%&'()*qwertyuiopasdfghjklzxcvbnm";
    int t=1;
    int tm=0;
    int opnum=0;
      char buffer[30];
    char var[1000];
    char out[1000];
    struct timeval tv;
    struct timeval tv2;
    int main()
    {
      if ( !isatty(0) ) {
      fprintf (stderr, "stdin not terminal\n");
      exit (1);
      };
    
    tcgetattr (0, &tty);
    savetty = tty;
    tty.c_lflag &= ~(ICANON|ISIG);
    tty.c_cc[VMIN] = 1;
    tcsetattr (0, TCSAFLUSH, &tty);
    
      srand(time(0));
    
      int i=0;
      bool c=true;
      time_t curtime;
      int passLen=200+rand()%400;
      for(int i=0;i<=passLen;i++){
        int s=rand()%2;
        if(s==1){
          out[i]=let[rand()%37];
        } else {
          out[i]=num[rand()%35];
        };
        if((i%5)==0 && i!=0)out[i]=' ';
      };
      out[passLen]='\0';
      int tt=gettimeofday(&tv, NULL);
      if(tt<0)exit(0);
      printf("%s\n",out);
      while(out[i]!='\0')
      {
        var[i]=getchar();
        if(var[i]!=out[i]){
          opnum++;
          printf("Er%c",out[i]);
        };
        i++;
      };
      tt=gettimeofday(&tv2, NULL);
      if(tt<0)exit(0);
      int tm=tv2.tv_sec-tv.tv_sec;
      int v=(passLen*60)/tm;
      int min=tm/60;
      tm%=60;
      printf("Time %d min %d sec\n",min,tm);
      cout<<"Num of errors "<<opnum<<" Speed "<<v<<endl;
      tcsetattr (0, TCSAFLUSH, &savetty);
      
    };

    Клавиатурный тренажер

    AliceGoth, 09 Марта 2011

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

    +171

    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
    void Cryptogram(const vector<string> &vector1, vector<string> &vector2)
    {
      string word;
      char new_letter;
      long i, j, wordSize, vecSize, vecSize2;
      vecSize = vector1.size();
      for(j=0; j<vecSize; j++)
        {
          word = vector1[j];
          //cout<<word<<endl;
          wordSize = word.size();
          cout<<wordSize<<endl;
          for(i=0; i<wordSize; i++)
      {
        new_letter = word[i];
        cout<<"& " << new_letter<< " " << isalpha(new_letter) << endl;
        if(isalpha(new_letter)==true)
          {
            if(isupper(new_letter)==true)
        {
    
          if (new_letter == 'A')
            new_letter = 'W';
          else if(new_letter == 'B')
            new_letter = 'Y';
          else if(new_letter == 'C')
            new_letter = 'I';
          else if(new_letter == 'D')
            new_letter = 'J';
          else if(new_letter == 'E')
            new_letter = 'K';
          else if(new_letter == 'F')
            new_letter = 'C';
          else if(new_letter == 'G')
            new_letter = 'U';
          else if(new_letter == 'H')
            new_letter = 'V';
          else if(new_letter == 'I')
            new_letter = 'D';
          else if(new_letter == 'J')
            new_letter = 'P';
          else if(new_letter == 'K')
            new_letter = 'Q';
          else if(new_letter == 'L')
            new_letter = 'L';
          else if(new_letter == 'M')
            new_letter = 'Z';
          else if(new_letter == 'N')
            new_letter = 'H';
          else if(new_letter == 'O')
    
            new_letter = 'T';
          else if(new_letter == 'P')
            new_letter = 'G';
          else if(new_letter == 'Q')
            new_letter = 'A';
          else if(new_letter == 'R')
            new_letter = 'B';
          else if(new_letter == 'S')
            new_letter = 'M';
          else if(new_letter == 'T')
            new_letter = 'X';
          else if(new_letter == 'U')
            new_letter = 'E';
          else if(new_letter == 'V')
            new_letter = 'F';
          else if(new_letter == 'W')
            new_letter = 'O';
          else if(new_letter == 'X')
            new_letter = 'N';
          else if(new_letter == 'Y')
            new_letter = 'R';
          else if(new_letter == 'Z')
            new_letter = 'S';
        }

    Cryptogram function, it's much longer, with 26 if statements if the letter is lowercase.

    BigEndian, 06 Марта 2011

    Комментарии (8)
  9. Java / Говнокод #5890

    +82

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    for (FileItem item : items) {
        try {
            item.write(new File(repo 
                    + System.currentTimeMillis() 
                    + "_" + item.getName()));
        } catch (Exception ex) {
            log.error(ex, ex);
        }
        mav.addObject("result", "http://xxx.xx/uploads/"
                + System.currentTimeMillis() 
                + "_" + item.getName());
    }

    долго думал почему имя файла на диске не совпадает с именем в ссылке.

    zlob.jc, 05 Марта 2011

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

    +158

    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
    <script language="php">
    $curl=curl_init("http://www.sportbox.ru");
    $proxy='us:psw@IP:port';
     
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($curl, CURLOPT_PROXY, $proxy);
     
    $content=curl_exec($curl);
     
    preg_match_all('#<h3><a href(.*)>(.*)</a></h3>#siU', $content, $titles);
    foreach ($titles[2] as $title)
    echo "<b>$title</b><br>";
     
    curl_close($content);
    </script>

    qbasic, 03 Марта 2011

    Комментарии (8)
  11. PHP / Говнокод #5843

    +169

    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
    <?php
    	exit
    	(
    		empty($_POST['key']) ||
    		empty($_POST['time']) ||
    		empty($_POST['email']) ||
    		(int)$_POST['time'] != $_POST['time'] ||
    		strlen((int)$_POST['time']) != strlen($_POST['time']) ||
    		!preg_match('/^[^@]+@[a-zA-Z0-9._-]+\.[a-zA-Z]+$/', $_POST['email']) ||
    		($_SERVER['REQUEST_TIME'] - $_POST['time']) > 60 * 60 ||
    		md5(str_rot13(md5($_POST['time']))) != $_POST['key']
    		?'-':'+'
    	);
    ?>

    Вот Ajax ответ

    wyand, 02 Марта 2011

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