1. Си / Говнокод #11373

    +126

    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
    #include "uni.h"
    #include "xreadlink.h"
    
    int process(char *dir);
    char *cd;
    char *scd;
    struct stat st1;
    
    ino_t cino;
    dev_t cdev;
    int main(){
    cd = (char *)malloc(160+1);
    if(cd==NULL){
     perror("Not enough memory");
     return -1;
    }
    scd = (char *)malloc(1600+1);
    if(scd==NULL){
     perror("Not enough memory");
     return -1;
    }
    memset(cd,'\0',1601);
    memset(scd,'\0',1601);
    strcat(scd,".");
    if(lstat(scd,&st1)==-1){
       perror("stat");
                   exit(EXIT_FAILURE);
    };
    cino = st1.st_ino;
    cdev = st1.st_rdev;
    //printf("inode %lu cdev %llu\n",cino,cdev);
      process(scd);
      return 0;
    };
    
    int process(char *dir){
      DIR *dp;
      struct dirent *ent;
      ino_t lino;
    dev_t ldev;
      ino_t lino2;
    dev_t ldev2;
    int cnt=0;
    char *mydir=(char*)malloc(1600);
    char *mydir2=(char*)malloc(1600);
    char **fpwd=(char**)malloc(160);
    for(int i=0;i<=160;i++){
      *(fpwd+i)=(char*)malloc(1600);
     if(*(fpwd+i)==NULL){perror("Not sufficient memory");
     return -1;
     }
    }
    if(mydir==NULL)return -1;
    if(*fpwd==NULL)return -1;
    strcpy(mydir,dir);
    strcpy(mydir2,dir);
    struct stat lstt;
    struct stat lstt2;
    struct stat stt;
      while(lino!=lino2 || ldev!=ldev2){
        if(lstat(mydir,&lstt)==-1){
            perror("not sufficient memory");
            return -1;
        }
        strcat(mydir2,"/..");
         if(lstat(mydir2,&lstt2)==-1){
            perror("not sufficient memory");
            return -1;
        }
        //printf("yes\n");
        lino=lstt.st_ino;
        ldev=lstt.st_rdev;
        lino2=lstt2.st_ino;
        ldev2=lstt2.st_rdev;
        if ((dp = opendir(mydir2)) == NULL) {
                    fprintf(stderr, "%s: cannot open for reading: %s\n", dir, strerror(errno));
                    return 1;
            }
          if(lstat(mydir2,&stt)==-1){
            perror("not sufficient memory");
            return -1;
          }
          //if(chdir("/")<0){perror("chdir");return -1;};
            while ((ent = readdir(dp)) != NULL){
             if(ent->d_ino==lino && strcmp(ent->d_name,".")!=0 && strcmp(ent->d_name,"..")!=0 && stt.st_rdev==ldev){
                    //printf("%8ld %s\n", ent->d_ino, ent->d_name);
                    strcat(fpwd[cnt++],ent->d_name);
             }
            }
            if (closedir(dp) != 0) {
                    fprintf(stderr, "%s: closedir: %s\n", dir, strerror(errno));
                    return 1;
            }
        //printf("mydir %s inode %lu cdev %llu inode %lu cdev %llu\n",mydir,lino,ldev,lino2,ldev2);
            strcat(mydir,"/..");
        strcpy(mydir2,mydir);
      }

    Поиск текущего каталога в дереве каталогов.

    AliceGoth, 07 Июля 2012

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

    +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
    if ((textBox1.Text == textBox2.Text) | (textBox1.Text == textBox3.Text) | (textBox1.Text == textBox4.Text) | (textBox1.Text == textBox7.Text) |
        (textBox2.Text == textBox1.Text) | (textBox2.Text == textBox3.Text) | (textBox2.Text == textBox5.Text) | (textBox2.Text == textBox8.Text) |
        (textBox3.Text == textBox1.Text) | (textBox3.Text == textBox2.Text) | (textBox3.Text == textBox6.Text) | (textBox3.Text == textBox9.Text) |
        (textBox4.Text == textBox5.Text) | (textBox4.Text == textBox6.Text) | (textBox4.Text == textBox1.Text) | (textBox4.Text == textBox7.Text) |
        (textBox5.Text == textBox4.Text) | (textBox5.Text == textBox6.Text) | (textBox5.Text == textBox2.Text) | (textBox5.Text == textBox8.Text) |
        (textBox6.Text == textBox4.Text) | (textBox6.Text == textBox5.Text) | (textBox6.Text == textBox3.Text) | (textBox6.Text == textBox9.Text) |
        (textBox7.Text == textBox8.Text) | (textBox7.Text == textBox9.Text) | (textBox7.Text == textBox1.Text) | (textBox7.Text == textBox4.Text) |
        (textBox8.Text == textBox7.Text) | (textBox8.Text == textBox9.Text) | (textBox8.Text == textBox2.Text) | (textBox8.Text == textBox5.Text) |
        (textBox9.Text == textBox7.Text) | (textBox9.Text == textBox8.Text) | (textBox9.Text == textBox3.Text) | (textBox9.Text == textBox6.Text)) ;
    else
    }
       label1.Visible = true;
       label2.Visible = true;
    }

    Это эпик.

    Fai, 07 Июля 2012

    Комментарии (23)
  3. PHP / Говнокод #11371

    +61

    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 myrnd(){
    	$rnd1=rand(48,57);
    	$rnd2=rand(65,90);
    	$rnd3=rand(97,122);
    	$rnd4=rand(1,3);
    	$rnd5="rnd".$rnd4;
    	return $$rnd5;
    }
    function createReffererLink(){
    	$refferer="";
    	for($i=0;$i<12;$i++){
    		$refferer.=chr($this->myrnd());
    	}
    	return $refferer;
    }

    Нашел в своей старой партнерской программе. Угадайте, что делает этот код? ( генерирует реферальную ссылку )

    xcont, 07 Июля 2012

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

    +141

    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
    99. 99
    <?php
    
    $sub = $_POST['sub'];
    
    if ($sub == "Поменять"){
    
    $player1 = $_POST['player1'];
    $player2 = $_POST['player2'];
    
    // количество дней
    $days = "";
    $fl = "sys/days.cou";
    $fp = fopen($fl,"r");
    while(!feof($fp)){
    $days .= fgets($fp,2);
    }
    fclose($fp);
    
    // РАБОТА С ИМЕНАМИ
    
    // считываю имя первого pl1 - саша
    
    $name1 = "";
    $fl = "db/player".$player1.".nm";
    $fp = fopen($fl,"r");
    while(!feof($fp)){
    $name1 .= fgets($fp,2);
    }
    fclose($fp);
    
    // новый файл pl2_ саша
    
    $fl = "db/player".$player2.".nm_";
    $fp = fopen($fl,"w+");
    $fw = fwrite($fp,$name1);
    fclose($fp);
    
    // считываю имя второго pl2 маша
    $name2 = "";
    $fl = "db/player".$player2.".nm";
    $fp = fopen($fl,"r");
    while(!feof($fp)){
    $name2 .= fgets($fp,2);
    }
    fclose($fp);
    
    // новый файл pl1 маша
    
    $fl = "db/player".$player1.".nm";
    $fp = fopen($fl,"w+");
    $fw = fwrite($fp,$name2);
    fclose($fp);
    
    // новый файл pl2 саша
    
    $fl = "db/player".$player2.".nm";
    $fp = fopen($fl,"w+");
    $fw = fwrite($fp,$name1);
    fclose($fp);
    
    // удаляю pl2_ саша
    unlink("db/player".$player2.".nm_");
    
    // появляются файлы pl1 маша и pl2 саша
    
    
    // ТЕПЕРЬ РАБОТА С РЕЗУЛЬТАТАМИ
    
    
    for ($i=1; $i<=$days; $i++){
    
    // считываю если есть резы pl1
    $fl = "db/p".$player1."d".$i.".mon";
    if (file_exists($fl)){
    
    $rez = "";
    $fp = fopen($fl,"r");
    while(!feof($fp)){
    $rez .= fgets($fp,2);
    }
    fclose($fp);
    
    $fl = "db/p".$player2."d".$i.".mon_";
    $fp = fopen($fl, "w+");
    $fw = fwrite($fp, $rez);
    fclose($fp);
    
    }
    
    // считываю, если есть резы pl2
    $fl = "db/p".$player2."d".$i.".mon";
    if (file_exists($fl)){
    
    $rez = "";
    $fp = fopen($fl,"r");
    while(!feof($fp)){
    $rez .= fgets($fp,2);
    }
    fclose($fp);

    Вот, выдавил из себя говнокод, который меняет местами игроков в таблице. Имена записаны в файлы player1.nm, player2.nm и т.д.
    Результаты определенных дней записаны по такой структуре:
    1) Есть дата 1.07.2012, она записана в файл day2.day (вообщем, в файл с номером по порядку: day1.day, day2.day и т.д.)
    2) Если игрок player1.nm играл в день 2, на который установлена дата 1.07.2012, то к нему создается файл p1d2.mon, в который записывается его результат.
    3) Потом просто считываются каждый из файлов p[PLAYER]d[DAY].mon и создается таблица.
    Вот сам сайт: http://pokerstat.16mb.com/

    EndoCrinolog, 06 Июля 2012

    Комментарии (32)
  5. PHP / Говнокод #11369

    +52

    1. 1
    2. 2
    define(ADS_ACTIVE_TIME, '+1 month');
    $active = date('d.m.Y H:i:s', strtotime(ADS_ACTIVE_TIME, strtotime(date('d.m.Y H:i:s'))));

    Коммерческий проект. Про time() мы не слышали, похоже...

    twsdwf, 06 Июля 2012

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

    +26

    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
    input >> heap;
    	while( heap[0] == '0' ) heap.erase( 0, 1 );
    
    	heaps.push_back( heap );
    
    	input >> heap;
    	while( heap[0] == '0' ) heap.erase( 0, 1 );
    
    	heaps.push_back( heap );
    
    	input >> heap;
    	while( heap[0] == '0' ) heap.erase( 0, 1 );
    
    	heaps.push_back( heap );

    Fai, 05 Июля 2012

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

    +21

    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
    template <typename T> 
    void sort( T array[], size_t length ) {
    	size_t left_index = 0;
    	size_t right_index = length - 1;
    
    	while ( left_index < right_index ) {
    		size_t min_index = min( array, left_index, right_index );
    		swap( array, min_index, left_index );
    
    		size_t max_index = max( array, left_index, right_index );
    		swap( array, max_index, right_index );
    
    		left_index++;
    		right_index--;
    	}
    }

    Fai, 05 Июля 2012

    Комментарии (13)
  8. Perl / Говнокод #11366

    −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
    if ($f_ISSUE_DATE !~ /^\d\d.\d\d.\d\d\d\d/ && $f_ISSUE_DATE){
                    $e_ISSUE_DATE = 'Дата выдачи паспорта вводится в формате "ДД.ММ.ГГГГ"';
                    $errorCounter ++;
            }
            if ($f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(ул\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(бул\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(наб\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(пер\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(пл\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(пр\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(просп\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(шоссе)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*()\s*(.*)$/)        {
                    $e_ADDRESS_OF_SVC_SHOP = 'Неправильный формат фактического адреса';
                    $errorCounter ++;
            }

    Ебаный стыд!!!
    скопипасчено из попавшегося куска "исподников", идет прям подряд.
    Уж даже и не знаю - что больший пиздец - первая часть или вторая.

    PS. Для тех кто вел себя хорого - конфетка!
    ВЕСЬ, БЛЯДЬ, проект постоен без единого гвозьдя!!! НИ ОДИН объект не пострадал!!!

    Meettya, 05 Июля 2012

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

    +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
    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
    protected string buildInsertString(ForecastTransactionsBean ft)
     {
        String sql = (new StringBuilder("insert into ")).append(getTableName()).append(" (").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append("year,version_num,corp,acct_num,dept_num,cc,").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append("epd_num,est_mar,est_apr,est_may,").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append("est_jun,est_jul,est_aug,est_sep,est_oct,est_nov,").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append("est_dec,est_jan,est_feb,inputby,batch_id,inputdate,").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append("manualetc,forecastnotes,acct_class,resource_group").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(") values ('").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getYear().toString()).append("',").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getVersionNum().toString()).append(",'").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getCorp().toString()).append("','").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getAcctNum().toString()).append("','").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getDeptNum().toString()).append("','").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getCc().toString()).append("','").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEpdNum().toString()).append("',").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstMar().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstApr().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstMay().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstJun().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstJul().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstAug().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstSep().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstOct().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstNov().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstDec().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstJan().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstFeb().toString()).append(",'").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getInputBy().toString()).append("','").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getBatchId().toString()).append("','").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getInputDate().toString()).append("',").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append("0,'Clarity','','')").toString();
        return sql;
     }

    denis90, 05 Июля 2012

    Комментарии (12)
  10. Java / Говнокод #11364

    +118

    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
    private String compileOwnerName() {
    		return Joiner.on(' ').skipNulls().
    		String firstName = ownerFirstName.getValue();
    		String lastName = ownerLastName.getValue();
    		
    		final StringBuilder buffer = new StringBuilder();
    		boolean first = true;
    		
    		if (firstName != null) {
    			firstName = firstName.trim();
    			
    			if (!"".equals(firstName)) {
    				buffer.append(firstName);
    				first = false;
    			}
    		}
    
    		if (lastName != null) {
    			lastName = lastName.trim();
    			
    			if (!"".equals(lastName)) {
    				if (!first) {
    					buffer.append(" ");
    				}
    				
    				buffer.append(lastName);
    			}
    		}
    		
    		return buffer.toString();
    	}

    В итоге заменено однострочником на Perl:

    return Joiner.on(' ').skipNulls().join(Strings.emptyToNull(ownerFirstName.getValue().trim()),
    ownerLastName.getValue().trim()));

    someone, 05 Июля 2012

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