1. C++ / Говнокод #11288

    −47

    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
    void init_by_array64(unsigned long long init_key[],
    		     unsigned long long key_length)
    {
        unsigned long long i, j, k;
        init_genrand64(19650218ULL);
        i=1; j=0;
        k = (NN>key_length ? NN : key_length);
        for (; k; k--) {
            mt[i] = (mt[i] ^ ((mt[i-1] ^ (mt[i-1] >> 62)) * 3935559000370003845ULL))
              + init_key[j] + j; /* non linear */
            i++; j++;
            if (i>=NN) { mt[0] = mt[NN-1]; i=1; }
            if (j>=key_length) j=0;
        }
        for (k=NN-1; k; k--) {
            mt[i] = (mt[i] ^ ((mt[i-1] ^ (mt[i-1] >> 62)) * 2862933555777941757ULL))
              - i; /* non linear */
            i++;
            if (i>=NN) { mt[0] = mt[NN-1]; i=1; }
        }
    
        mt[0] = 1ULL << 63; /* MSB is 1; assuring non-zero initial array */ 
    }

    "Чистый и ясный код" (с)

    Fai, 24 Июня 2012

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

    +137

    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
    public class Problem33 {
        public static void main(String arg[]){
            long l1 = Calendar.getInstance().getTimeInMillis();
            int amount = 0;
            for(int a=1; a<=9; a++){
                for(int b=1; b<=9; b++){
                    for(int c=1; c<=9; c++){
                        for(int d=1; d<=9; d++){
                            int numerator = a*10+b;
                            int denominator = c*10+d;
                            double fraction = 1.0*numerator/denominator;
                            if(numerator < denominator){
                                if(
                                  (a==c && (1.0*b/d == fraction)) ||
                                  (a==d && (1.0*b/c == fraction)) ||
                                  (b==c && (1.0*a/d == fraction)) ||
                                  (b==d && (1.0*a/c == fraction))
                                  ){
                                    amount++;
                                    System.out.println(a + "" +  b + "/" + c + "" + d);
                                 }
                            }
                        }
                    }
                }
            }
            System.out.println(amount);
            long l2 = Calendar.getInstance().getTimeInMillis();
            System.out.println("Time: " + (l2-l1) + "ms");
        }
    }

    http://projecteuler.net/problem=33
    http://projecteuler.net/thread=33

    TheHamstertamer, 24 Июня 2012

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

    +57

    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
    class GetParameter
    	{
    		var $dbhost = '';
    		var $dbname = '';
    		var $dblogin = '';
    		var $dbpassword = '';
    
    		var $deepmenu1itemstable = '`deepmenu1items`';
    		var $deepmenu2itemstable = '`deepmenu2items`';
    		var $topmenu2itemstable = '`topmenu2items`';
    		var $topmenu3itemstable = '`topmenu3items`';
    		var $topmenu4itemstable = '`topmenu4items`';
    		var $news1table = '`news1`';
    		var $news2table = '`news2`';
    		var $news3table = '`news3`';
    		var $news4table = '`news4`';
    		var $sites2table = '`sites2`';
    		var $chattable = '`chat`';
    		var $votestable = '`votes`';
    		
    
    		var $varstable = '`vars`';
    		var $sitestable = '`sites`';
    		var $orderstable = '`orders`';
    		var $fotoreporttable = '`fotoreport`';
    		var $fotortable = '`fotor`';
    		var $articlestable = '`articles`';
    		var $menuitemstable = '`menuitems`';
    		var $topmenuitemstable = '`topmenuitems`';
    		var $streetstable = '`streets`';
    		var $regionstable = '`regions`';
    		var $zastrojstable = '`zastrojs`';
    		var $naznachofisstable = '`naznachofiss`';
    		var $managerstable = '`managers`';
    		var $opensellstable = '`opensells`';
    		var $objectstable = '`objects`';
    		var $kodstable = '`kods`';
    		var $namestable = '`names`';
    		var $adminstable = '`admins`';
    		var $peoplestable = '`peoples`';
    
    		var $userstable = '`users`';
    }

    Сайт написан за 1500$
    молчу про остальные классы и функции.

    Samedi, 24 Июня 2012

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

    +47

    1. 1
    2. 2
    3. 3
    4. 4
    return PartnersProjectDaily::getInstance()->getSummary(
              array('date' => Utils::dateFormat($_POST['date']), 
                       'options' =>new StatSearchOptions($_POST['options']), 
                        'group' => $_POST['group']));

    Инкапсулировать параметризация полностью, руки не дошли?

    sl4mmer, 24 Июня 2012

    Комментарии (1)
  5. Python / Говнокод #11284

    −93

    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
    # -*- coding: utf-8 -*-
    from django.db import models
    
    # Create your models here.
    
    class SheduleItem(models.Model):
      WIKDI = (
        ('monday', 'Понедельник'),
        ('tuesday', 'Вторник'),
        ('wednesday', 'Среда'),
        ('thursday', 'Четверг'),
        ('friday', 'Пятница'),
        ('saturday', 'Суббота'),
        ('sunday', 'Воскресенье'),
      )
      TAIM = (
        ('08:00', '08:00'),
        ('09:00', '09:00'),
        ('10:00', '10:00'),
        ('11:00', '11:00'),
        ('12:00', '12:00'),
        ('13:00', '13:00'),
        ('14:00', '14:00'),
        ('15:00', '15:00'),
        ('16:00', '16:00'),
        ('17:00', '17:00'),
        ('18:00', '18:00'),
        ('19:00', '19:00'),
        ('20:00', '20:00'),
        ('21:00', '21:00'),
      )
      weekday = models.CharField(max_length=20, choices=WIKDI)
      time = models.CharField(max_length=6, choices=TAIM)
      action = models.CharField(max_length=30)
      trainer = models.ForeignKey('trainers.StrongTrainer')
    
      def __unicode__(self):
        return self.action

    Django-модель для таблицы расписания занятий. Выдавлено в 2 часа ночи под Сержа Танкяна.

    fat0troll, 24 Июня 2012

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

    +159

    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
    function group_sorting_ABC(array, mode)
    {
        var arr = [],
            resArray = [],
            add;
        for (var i = 0; i < array.length; i++)
        {
            var key;
            if (array[i].index && mode == 'index')
            {
                switch (array[i].index.toString().length)
                {
                case 1:
                    add = '00';
                    break;
                case 2:
                    add = '0';
                    break;
                case 3:
                    add = '';
                    break;
                }
                key = add + array[i].index;
            }
            else
            {
                key = array[i].name;
            }
            arr.push(key + '@' + i);
        }
        arr = arr.sort();
        for (var i = 0; i < arr.length; i++)
        {
            var a = arr[i].split('@');
            var item = array[a[1]];
            resArray.push(item);
        }
        return resArray;
    }

    Наковырял в middleware set top box-а MAG-250.

    vovams, 23 Июня 2012

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

    −45

    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
    #include <iostream>
    #include <conio.h>
     
    using namespace std;
     
    void iswap(int &n1, int &n2)
    {
        int temp = n1;
        n1 = n2;
        n2 = temp;
    }
     
    int main()
    {
        int const n = 100;
        int a[n];
        for ( int i = 0; i < n; ++i ) { a[i] = n - i; cout << a[i] << " "; }
            //заполняем массив для наглядности.
            //-----------сортировка------------// 
            //сортирует по-возрастанию. чтобы настроить по-убыванию, 
            //поменяйте знаки сравнения в строчках, помеченных /*(знак)*/
        int sh = 0; //смещение
        bool b = false;
        for(;;)
        {
            b = false;
            for ( int i = 0; i < n; i++ )
            {
                if( i * 2 + 2 + sh < n )
                {
                    if( ( a[i + sh] > /*<*/ a[i * 2 + 1 + sh] ) || ( a[i + sh] > /*<*/ a[i * 2 + 2 + sh] ) )
                    {
                        if ( a[i * 2 + 1 + sh] < /*>*/ a[i * 2 + 2 + sh] ) 
                        {
                            iswap( a[i + sh], a[i * 2 + 1 + sh] );
                            b = true;
                        }
                        else if ( a[i * 2 + 2 + sh] < /*>*/ a[ i * 2 + 1 + sh]) 
                             {
                                 iswap( a[ i + sh], a[i * 2 + 2 + sh]);
                                 b = true;
                             }
                    }
                }
                else if( i * 2 + 1 + sh < n )
                     {
                         if( a[i + sh] > /*<*/ a[ i * 2 + 1 + sh] )
                         {
                             iswap( a[i + sh], a[i * 2 + 1 + sh] );
                             b = true;
                         }
                     }
            }
            if (!b) sh++; //смещение увеличивается, когда на текущем этапе 
                          //сортировать больше нечего
            if ( sh + 2 == n ) break; 
        }  //конец сортировки
     
     
        cout << endl << endl;
        for ( int i = 0; i < n; ++i ) cout << a[i] << " "; 
     
     
        _getch();
        return 0;
    }

    Запостил как-то на вики как более короткая реализация с++, более понятная и главное - рабочая. Не признали. Сам смотрю - не понимаю че там написано )))

    idec, 23 Июня 2012

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

    +50

    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
    <?php
    		
    		$confs = array();
    		
    		$q = new WP_Query(array('post_type' => 'conference',
    					'posts_per_page' => -1,
    					'meta_key' => 'cd-conference-date-start',
    					'orderby' => 'meta_value_num',
    					'order' => 'DESC'
    					));
    		while($q->have_posts()): $q->the_post();
    		$confs[date("Y", get_post_meta($post->ID, 'cd-conference-date-start', true))][] = array('conf_title' => get_the_title(),
    												      'conf_date_start' => get_post_meta($post->ID, 'cd-conference-date-start', true),
    												      'conf_date_end' => get_post_meta($post->ID, 'cd-conference-date-end', true),
    												      'conf_link' => get_permalink(),
    												      'conf_city' => '', /* Город */
    												      'conf_icon' => '' /* Иконка */
    												      );
    		endwhile;
    
    		wp_reset_postdata();
    		
    		foreach($confs as $key => $value)
    		{
    		?>
                    <h1 class="year"><?=$key;?></h1>
    		<?php
    		//print_r($value);
    		?>
                    <div class="conferences">
    		  <?php foreach($value as $val)
    		  {
    		  //print_r($val);
    		  ?>
                      <div class="conf">
                        <div class="leftcol">
                          <a href="<?=$val["conf_link"];?>"><img src="<?=$val["conf_icon"];?>"></a>
                        </div>
                        <div class="rightcol">
                          <a href="<?=$val["conf_link"];?>"><h2><?=$val["conf_title"];?></h2></a>
                          <span class="date-place">
    			<?php
    			//setlocale(LC_TIME, "ru_RU");
    			if(date("m", $val["conf_date_start"]) == date("m", $val["conf_date_end"])) $confdays = date("j", $val["conf_date_start"])."-".date("j", $val["conf_date_end"])." ".mb_strtolower(strftime("%B", $val["conf_date_start"]));
    			else
    			{
    				$confdays = date("j", $val["conf_date_start"])." ".mb_strtolower(strftime("%B", $val["conf_date_start"]))." - ".date("j", $val["conf_date_end"])." ".mb_strtolower(strftime("%B", $val["conf_date_end"]));
    			}
    			?>
    			<?=$confdays;?>, <?=$val["conf_city"];?>
    		      </span>
                        </div>
                      </div>
    		  <?php
    		  }
    		  ?>
                    </div>
    		
    		<?php } ?>

    varg242, 23 Июня 2012

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

    +130

    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
    int print_entry(const char* name, const char* dir,const struct stat* st)
    {
      if(!S_ISDIR(st->st_mode)){
          if(S_ISREG(st->st_mode)){
            printf("<file type=\"regular file\" owner=\"%d\" group=\"%d\">%s/%s</file>\n",st->st_uid,st->st_gid,dir,name);
          };
          if(S_ISCHR(st->st_mode)){
            printf("<file type=\"charcter device\" owner=\"%d\" group=\"%d\">%s/%s</file>\n",st->st_uid,st->st_gid,dir,name);
          }
          if(S_ISBLK(st->st_mode)){
            printf("<file type=\"block device\" owner=\"%d\" group=\"%d\">%s/%s</file>\n",st->st_uid,st->st_gid,dir,name);
          }
          if(S_ISFIFO(st->st_mode)){
            printf("<file type=\"FIFO(named pipe)\" owner=\"%d\" group=\"%d\">%s/%s</file>\n",st->st_uid,st->st_gid,dir,name);
          }
          if(S_ISLNK(st->st_mode)){
             char *linkname;
             ssize_t r;
             char *lname=strcat(dir,"");
             linkname =  new char[st->st_size + 1];
             if (linkname == NULL) {
                fprintf(stderr, "insufficient memory\n");
                exit(EXIT_FAILURE);
             }
            r=readlink(lname, linkname, st->st_size + 1);
            if (r < 0) {
              return 0;
            }
               if (r > st->st_size) {
            fprintf(stderr, "symlink increased in size "
                            "between lstat() and readlink()\n");
            exit(EXIT_FAILURE);
        }
    
            linkname[st->st_size] = '\0';
            printf("<file type=\"symbolic link\" owner=\"%d\" group=\"%d\" linkname=\"%s\">%s/%s</file>\n",st->st_uid,st->st_gid,linkname,dir,name);
          }
          if(S_ISSOCK(st->st_mode)){
            printf("<file type=\"socket\" owner=\"%d\" group=\"%d\">%s/%s</file>\n",st->st_uid,st->st_gid,dir,name);
          }
        }
        return 0;
    }
     
    int main(int argc, char* argv[])
    {
    if(argc != 2)
        {
        fprintf(stderr, "Usage: %s DIR\n", argv[0]);
        exit(1);
        }
        printf("<dir name=\"%s\">\n",argv[1]);
        walk(argv[1], print_entry, 1,0);
        printf("</dir>",argv[1]);
    }

    Создание xml файла всех директорий, поддиректорий и их файлов

    AliceGoth, 22 Июня 2012

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

    +45

    1. 1
    $ApsolutePath = $_SERVER['DOCUMENT_ROOT']; # Абсолютный путь до сайта (автоматическое определение корневой директории)

    $ApsolutePath - Ну как? КАК?

    domaster, 22 Июня 2012

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