1. Список говнокодов пользователя maksim_ovcharik

    Всего: 9

  2. Куча / Говнокод #26037

    +1

    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
    .server-config
      .component
        .title(translate) protsessor
        .value(ng-if="!server.custom")
          | {{ server.cpu || '—' }}
        .value(ng-if="server.custom")
          span(ng-if="server.custom.cpu && server.custom.cpu.length && server.custom.cpu[0].count > 1")
            | {{ server.custom.cpu[0].count + ' x ' }}
          span(ng-if="server.custom.cpu && server.custom.cpu.length")
            | {{ server.custom.cpu[0].name }}
          span(ng-if="!server.custom.cpu || !server.custom.cpu.length")
            | —
    
      .component
        .title(translate) pamyat
        .value(ng-if="!server.custom")
          | {{ server.memory || '—' }}
        .value(ng-if="server.custom")
          span(ng-if="server.custom.ram && server.custom.ram.length")
            span(ng-if="server.custom.ram[0].count > 1")
              | {{ +server.custom.ram[0].name.split(' ')[0].replace('GB', '') * server.custom.ram[0].count + ' GB — ' }}
            span(ng-if="server.custom.ram[0].count > 1")
              | {{ server.custom.ram[0].count + ' x ' }}
            span
              | {{ server.custom.ram[0].name }}
          span(ng-if="!server.custom.ram || !server.custom.ram.length")
            | —
    
      .component
        .title(translate) disk
        .value(ng-if="!server.custom")
          | {{ server.hdd || '—' }}
        .value(ng-if="server.custom.disk && server.custom.disk.length")
          .line(ng-repeat="hdd in server.custom.disk")
            span(ng-if="hdd.count > 1") {{ hdd.count + ' x ' }}
            span {{ hdd.name }}
        .value(ng-if="server.custom && (!server.custom.disk || !server.custom.disk.length)")
          | —
    
      .component(ng-if="server.custom")
        .title(translate) Platform
        .value(ng-if="server.custom.case && server.custom.case.length")
          | {{ server.custom.case[0].name }}
        .value(ng-if="server.custom && (!server.custom.case || !server.custom.case.length)")
          | —
    
      .component(ng-if="server.custom")
        .title(translate) Motherboard
        .value(ng-if="server.custom.motherboard && server.custom.motherboard.length")
          | {{ server.custom.motherboard[0].name }}
        .value(ng-if="server.custom && (!server.custom.motherboard || !server.custom.motherboard.length)")
          | —
    
      .component(ng-if="server.custom.pcie && server.custom.pcie.length")
        .title(translate) pcie
        .value
          .line(ng-repeat="pcie in server.custom.pcie")
            span(ng-if="pcie.count > 1") {{ pcie.count + ' x ' }}
            span {{ pcie.name }}

    Код написан на Pug, представляет из себя фрагмент шаблона AngularJS, предназначенный для отображения конфигурации сервера. Данный код, через копирование-вставку, был заботливо размещен в нескольких файлах, иногда претерпевая незначительные изменения. Здесь публикую отчищенный от всего лишнего и сильно отформатированный вариант, дабы проще было насладиться полетом фантазии автора, в исходном виде весь этот код - одно сплошное месиво.

    maksim_ovcharik, 21 Ноября 2019

    Комментарии (15)
  3. SQL / Говнокод #16958

    −866

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    SELECT media.*
    FROM media
      INNER JOIN (
        SELECT hall_id, MIN(position) AS minpos
        FROM media
        GROUP BY zal_id
      ) AS b ON media.hall_id = b.hall_id AND
                IFNULL(media.position, 0) = IFNULL(b.minpos, 0)
    
    WHERE media.hall_id IN (...)
    GROUP BY media.hall_id

    Нужно выбрать только первый media для конкретных залов, с минимальной позицией, причем позиция может быть нулом. Вот такой костыльный запрос получился в итоге.

    maksim_ovcharik, 28 Октября 2014

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

    +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
    public Random abstract_logic = new Random();
    ...
            private int ComplexFunctionToDetermineTheNumberOfResults(ObservableCollection<Result> rs)
            {
                int a = 0;
                for (int i = 0; i < rs.Count; i++)
                {
                    a += rs[i].Value;
                }
                double d = a / Math.PI;
                d = Math.Cos(d) * Math.Sin(a) * (Math.Cos(Math.PI) + 1);
                return abstract_logic.Next((int)d + 3) + 3;
            }

    Лаба 2.
    Наформашлепствовал 40+ файлов (Сплошной говнокод), в итоге должна получится система тестирования. В конце данной функцией определяю количество выводимых результатов.

    maksim_ovcharik, 22 Декабря 2013

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

    +14

    1. 1
    std::set_unexpected( [] () {} );

    Студия достала и не позволяла обрабатывать исключения, а они нужны были для демонстрации работы, в итоге навесил такой костыль и включил SEH исключения в параметрах компиляции.

    maksim_ovcharik, 29 Мая 2013

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

    +24

    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
    #include <conio.h>
    #include <stdio.h>
     
     
    const int SIZE = 33;
     
    void DecToBin (unsigned int num, char *bin)
    {
       int i,j;
       char tmp[SIZE];
     
       for(i=0; num; num>>=1, i++)
               tmp[i] = (num&1)?('1'):('0');
       
       for(j=0; j<i; j++)
               bin[j] = tmp[i-j-1];
       bin[j]='\0';
    }
     
    unsigned int shl(unsigned int num, int shift)
    {
            return (num << shift) | (num >> 32 - shift);
    }
     
    void main()
    {
            int n, m;
            scanf("%d", &n);
            
            char bin[SIZE];
     
            DecToBin(n,bin);
            printf("%s\n", bin);
     
            m = shl(n, 35);
            DecToBin(m,bin);
        printf("%s\n", bin);
            _getch();
    }

    Еще одна очередная лаба, но уже код преподавателя, который он дал в качестве примера. Сказал что код на C++ (к вопросу, где здесь с++), и что нам нужно переписать его на "яве".

    maksim_ovcharik, 18 Октября 2012

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

    +24

    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
    do
        {
    		count++;
    		Xt=X;
    		if (ii==1)
    		{
    			X= dichotomia(a,b, E);
    			fprintf(bnf, "%lf;\n", Xt);
    		}
    		else
    		{
    			if (ii==2)
    			{
    				X=newton(X, E);
    				fprintf(bnf, "%lf;\n", Xt);
    			} 
    			else
    			{
    				if (ii==3)
    				{
    					X=sekuschich(X, b);
    					fprintf(bnf, "%lf;\n", Xt);
    				}
    				else
    				{
    					if (ii==4)
    					{
    						ii==1;
    						ii==2;
    						ii==3;
    					}
    				}
    			}
    		}
    		printf("X=%lf\n", X);
    		if(Func(X)*Func(a)>0)a=X;
    		else b=X;
    	}
    	while(fabs(X-Xt)>=E);

    В общем лаба на численые методы поиска корней.
    После того как я предоставил няшный, полностью удовлетворяющий условиям, после проверки меня попросили "сделать как у парней", и вот участок их высера

    p.s. форматирование сохранить не удалось, да и там совсем бы ничего понятно бы не было

    maksim_ovcharik, 09 Июля 2012

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

    +92

    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
    Console.Write("Введите координату Xm: ");
                double Xm = Convert.ToDouble(Console.ReadLine());
                Console.Write("Введите координату Ym: ");
                double Ym = Convert.ToDouble(Console.ReadLine());
    
                Console.Write("Введите координату Xa: ");
                double Xa = Convert.ToDouble(Console.ReadLine());
                Console.Write("Введите координату Ya: ");
                double Ya = Convert.ToDouble(Console.ReadLine());
    
                Console.Write("Введите координату Xb: ");
                double Xb = Convert.ToDouble(Console.ReadLine());
                Console.Write("Введите координату Yb: ");
                double Yb = Convert.ToDouble(Console.ReadLine());
    
                Console.Write("Введите координату Xc: ");
                double Xc = Convert.ToDouble(Console.ReadLine());
                Console.Write("Введите координату Yc: ");
                double Yc = Convert.ToDouble(Console.ReadLine());
    
                if (
                    ((((Xb - Xa) * Ym + (Xa * Yb - Xb * Ya) - (Yb - Ya) * Xm <= 0) && ((Xb - Xa) * Yc + (Xa * Yb - Xb * Ya) - (Yb - Ya) * Xc <= 0))
                    || (((Xb - Xa) * Ym + (Xa * Yb - Xb * Ya) - (Yb - Ya) * Xm >= 0) && ((Xb - Xa) * Yc + (Xa * Yb - Xb * Ya) - (Yb - Ya) * Xc >= 0)))
    
                    && ((((Xc - Xa) * Ym + (Xa * Yc - Xc * Ya) - (Yc - Ya) * Xm <= 0) && ((Xc - Xa) * Yb + (Xa * Yc - Xc * Ya) - (Yc - Ya) * Xb <= 0))
                    || (((Xc - Xa) * Ym + (Xa * Yc - Xc * Ya) - (Yc - Ya) * Xm >= 0) && ((Xc - Xa) * Yb + (Xa * Yc - Xc * Ya) - (Yc - Ya) * Xb >= 0)))
                    
                    && ((((Xc - Xb) * Ym + (Xb * Yc - Xc * Yb) - (Yc - Yb) * Xm <= 0) && ((Xc - Xb) * Ya + (Xb * Yc - Xc * Yb) - (Yc - Yb) * Xa <= 0))
                    || (((Xc - Xb) * Ym + (Xb * Yc - Xc * Yb) - (Yc - Yb) * Xm >= 0) && ((Xc - Xb) * Ya + (Xb * Yc - Xc * Yb) - (Yc - Yb) * Xa >= 0)))
                    ) Console.WriteLine("Точка ({0}, {1}) входит в треугольник", Xm, Ym);
                else Console.WriteLine("Точка ({0}, {1}) не входит в треугольник", Xm, Ym);
                Console.ReadKey();

    Проверка входит ли точка в треугольник.

    maksim_ovcharik, 19 Мая 2012

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

    +142

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    void main()
    {
        int mass[6]={4,1,3,5,7,0};
        quicksort(mass,5);
        while(mass[5]<7)
            printf("%d",mass[5]);
        getch();
    }

    в общем дал препод готовую программу, задание было найти ошибки, так как программа компилируется, и вроде как ошибка не очевидна, как там виндовс выполнять это будет не знаю, у меня бы вылетело с ошибкой сегментирования, делаю предположение. Изначально проблемное место выглядело примерно так:
    while(mass[5]<5)
    printf("%d",mass[mass[5]]);
    вот это исправление одного из студентов нашего потока, так это второй курс специальности ЭВМ, (facepalm)

    maksim_ovcharik, 17 Февраля 2012

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

    +95

    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
    program z1;
    
     function func (x: real): real;
     const e = 0.000000000000001; {15 знаков после запятой}
     var f: real; {переменая для расчета двойного факториала}
         i, k: integer; {счетчик проходов, i-общий, k-частный}
         d: real; {добавляемая дельта}
         y: real; {переменная искомого значения}
     begin
      y := 1.0;
      i := 1;
      repeat
        f := 1;                 {----------}
        k := i;                 {--расчет--}
        while (k >= 2) do begin {-двойного-}
          f := f * k;           {факториала}
          k := k - 2;           {----------}
        end;                    {----------}
        
        d := 1;                 {---------------------}
        for k := 1 to i do      {считаем степень числа}
          d := d * x;           {---------------------}
        
        d := d / f;             {-----------------находим d-----------------}
        if (d < e) then break;  {проверяем ее на попадание в разрядную сетку}
        
        y := y + d;
        i := i + 1;
      until (false);
      func := y;
     end;
     
    var x: real;
     
    begin
      write ('Введите x: ');
      readln (x);
      writeln ('y = ', func (x):3:15);
    end.

    maksim_ovcharik, 09 Ноября 2010

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