1. Куча / Говнокод #15887

    +139

    1. 1
    2. 2
    Представляю Вашему вниманию новейший минусатор: http://rghost.ru/54852059
    Исправлены многие ошибки предыдущих версий. Не побрезгуйте, родимые!..

    Новейший минусатор для творения непотребностей с рейтингом.

    brutushafens, 02 Мая 2014

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

    +96

    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
    Var
    h : THandle;
    
    procedure TMain.FormCreate(Sender: TObject);
    
    begin
    begin
    h := CreateMutex(nil, True, PChar(ExtractFileName(Application.ExeName)));
    if WaitForSingleObject(h, 0)<>0 then
    begin
    ShowMessage(‘Программа уже запущена!’);
    Application.Terminate;
    CloseHandle(h);
    end;
    end;

    http://moron.1side.ru/programmirovanie/delphi/zapret-povtornogo-zapuska-programmy.php

    brutushafens, 02 Мая 2014

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

    +17

    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
    cKeyCfg::types_t cConfiguration::SearchInType(string type)
    {
        CTint i = 0;
        const CTbyte * types[] = { "S", "D" };
    
        for(i = 0; i < sizeof(types)/sizeof(types[0]); i++) {
          if ( strcmp(type.c_str(),types[i]) == 0) {
            switch (i) {
            case 0: // Is string
              return cKeyCfg::stringa;
            case 1: // Is decimal
              return cKeyCfg::decimale;
            default: //Default value VT_BSTR
              return cKeyCfg::unknow;
            }
          }
        }
        return cKeyCfg::unknow;
    }

    сделано на родине Fiat'а.

    Dummy00001, 02 Мая 2014

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

    +134

    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
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.IO;
    using System.Linq;
    using System.Net;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace ConnectToTenderGov
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
                Connect connect = new Connect();
                webBrowser1.Navigate("https://tender.me.gov.ua/EDZFrontOffice/menu/ru/");
            
                while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
                    Application.DoEvents();
                webBrowser1.Document.GetElementById("login:login").SetAttribute("value", "***@***.com");
                webBrowser1.Document.GetElementById("login:password").SetAttribute("value", "***");
                webBrowser1.ScriptErrorsSuppressed = true;
                webBrowser1.Document.GetElementById("login:loginButtonPopup").InvokeMember("click");
            }
        }
    }

    Пытался реализовать модуль авторизации, требование - должны были использоваться cookie.

    qstd, 02 Мая 2014

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

    +15

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    tblib::operator << (s, curVersion);
    tblib::operator << (s, indPlayer);
    tblib::operator << (s, indDiamond);
    tblib::operator << (s, indDisk);
    tblib::operator << (s, indExit);
    tblib::operator << (s, indDust);

    Нельзя просто взять, и написать
    s << curVersion << indPlayer << indDiamond << indDisk << indExit << indDust;
    потому что глючный крестоблядский крестокомпилятор (MSVS-03) не может выбрать нужную крестоперегрузку.
    "Сразу записать инт, или сначала кастануть его к жопе и записать жопу?"

    TarasB, 01 Мая 2014

    Комментарии (15)
  6. Куча / Говнокод #15879

    +117

    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
    DataSection
      Data.f 0.0025,0.0026,0.00235
    EndDataSection
    
    Global SCREENWIDTH,SCREENHEIGHT
    
    Define .f:bitplanes.b=32
    
    SCREENWIDTH=GetSystemMetrics_(#SM_CXSCREEN)
    SCREENHEIGHT=GetSystemMetrics_(#SM_CYSCREEN)
    
    If InitSprite()=0 Or InitSprite3D()=0 Or InitKeyboard()=0
      MessageRequester("Error","Can't access DirectX",0)
      End
    EndIf
    
    desktop.l = CreateImage(0,DesktopWidth(0),DesktopHeight(0))
    hdc.l = StartDrawing(ImageOutput(0))
    SelectObject_(hdc,desktop)
    BitBlt_(hdc,0,0,DesktopWidth(0),DesktopHeight(0),GetDC_(GetDesktopWindow_()),0,0,#SRCCOPY)
    StopDrawing()
    DeleteDC_(hdc)
    
    While OpenScreen(SCREENWIDTH,SCREENHEIGHT,bitplanes.b,"FullScreen")=0
      If bitplanes.b>16
        bitplanes.b-8
      ElseIf SCREENHEIGHT>600
        SCREENWIDTH=800
        SCREENHEIGHT=600
      ElseIf SCREENHEIGHT>480
        SCREENWIDTH=640
        SCREENHEIGHT=480
      ElseIf SCREENHEIGHT>400
        SCREENWIDTH=640
        SCREENHEIGHT=400
      ElseIf SCREENHEIGHT>240
        SCREENWIDTH=320
        SCREENHEIGHT=240
      ElseIf SCREENHEIGHT>200
        SCREENWIDTH=320
        SCREENHEIGHT=200
      Else
        MessageRequester("Listen:","Can't open Screen!",0)
        End
      EndIf
    Wend
    w=DesktopWidth(0)
    h=DesktopHeight(0)
    z=1000/Sqr(3)
    perspw=w
    PerspectiveAngle.d=#PI/16
    CreateSprite(0,w,h,#PB_Sprite_Texture)
    StartDrawing(SpriteOutput(0))
    DrawImage(ImageID(0),0,0)
    StopDrawing()
    DisplaySprite(0,0,0)
    FlipBuffers()
    DisplaySprite(0,0,0)
    CreateSprite3D(0,0)
    x3=w-1
    x4=0
    y3=h
    y4=h
    z3=z
    z4=z
    For t.b=1 To 3
      omega=-omega
      Read alfa
      Repeat
        ExamineKeyboard()
        ClearScreen(0)
        Incrz=h*Sin(Angle)
        x1=Incrz*Tan(PerspectiveAngle)
        x2=x3-x1
        y1=h-h*Cos(Angle)
        y2=y1
        z1=z+Incrz/4.75
        z2=z1:Start3D()
        TransformSprite3D(0,x1,y1,z1,x2,y2,z2,x3,y3,z3,x4,y4,z4)
        DisplaySprite3D(0,0,0,255)
        Stop3D()
        omega+alfa
        If omega<0
          Angle-Pow(omega,2)
        Else
          Angle+Pow(omega,2)
        EndIf
        If Angle<0 Or Angle>4/5*#PI
          Break
        EndIf
        FlipBuffers()
        Delay(10)
      Until KeyboardPushed(#PB_Key_Escape)
    Next
    DisplaySprite(0,0,0)
    FlipBuffers()
    Delay(10)
    DisplaySprite(0,0,0)

    Очень интересный эффект - экран "отшатывается" от юзера :)
    Для компиляции понадобится PureBasic не ниже 4.50

    brutushafens, 01 Мая 2014

    Комментарии (7)
  7. PHP / Говнокод #15878

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    function getLocaleByLang($lang) {
       if(!isset($lang)) return false;
       //function's code is here...
    }

    Ну думаю тут все понятно - зачем проверять существование переменной, которую невозможно не передать) Вот что значит - дедлайн рядом.

    Heian, 01 Мая 2014

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

    −166

    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
    Функция ЭтоБуква(Буква)
                    Возврат Найти("еоатинркулмДСвПдОсКцчыгзпбТНИьБФхВяРАЗЭйУЕГМЦжщЙШЩЫЛЯЧЬХЪЖЮЁёшъфэюQWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm", Буква) > 0;
    КонецФункции
     
    Функция ЭтоЦифра(Буква)
     
                    Возврат Найти("1234567890", Буква)>0;
     
    КонецФункции // ЭтоЦифра()
     
    Функция ЭтоБукваИлиЦифра(Символ)
     
                    Возврат Найти("еоатинркулмДСвПдОсКцчыгзпбТНИьБФхВяРАЗЭйУЕГМЦжщЙШЩЫЛЯЧЬХЪЖЮЁёшъфэюQWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm1234567890", Символ) > 0;
     
    КонецФункции // ЭтоБукваИлиЦифра()

    Из типовой конфигурации БГУ 2.0.
    На первый взгляд реализация забавна :-) Но, в общем-то, это не является говнокодом: просмотрев в гугле различные "рейтинги букв", получил примерно то же самое.
    Тем не менее, можно решить вопрос с помощью проверки кода символа.

    Voittamaton, 01 Мая 2014

    Комментарии (21)
  9. PHP / Говнокод #15876

    +154

    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
    foreach ($arResult['SECTIONS'] as $key => $arSection)
    		{
    			$arMap[$arSection['ID']] = $key; /*Собираем все ID секций, при этом в качестве ключа пишем ID, а в качестве значения - индекс цикла (?!)*/
    		}
    		$rsSections = CIBlockSection::GetList(array(), array('ID' => array_keys($arMap)), false, $arSelect); 
                    /*вызываем API - выборку из базы, при этом фильтруем по ID-шникам, вынимая их значения через array_keys() (??!!!) при том, что мы сами записывали ID шники в ключи а не в значения*/
    		while ($arSection = $rsSections->GetNext())
    		{
    			if (!isset($arMap[$arSection['ID']]))
    				continue; /*Проверяем еще раз что этот ID-ключ есть в массиве ??? мы его оттуда взяли*/
    			$key = $arMap[$arSection['ID']]; /*Нахера ??? (см. строчку 03)*/
    			if ($boolPicture)
    			{
    				$arSection['PICTURE'] = intval($arSection['PICTURE']);
    				$arSection['PICTURE'] = (0 < $arSection['PICTURE'] ? CFile::GetFileArray($arSection['PICTURE']) : false);
    				$arResult['SECTIONS'][$key]['PICTURE'] = $arSection['PICTURE'];
    				$arResult['SECTIONS'][$key]['~PICTURE'] = $arSection['~PICTURE'];
    			}
    			if ($boolDescr)
    			{
    				$arResult['SECTIONS'][$key]['DESCRIPTION'] = $arSection['DESCRIPTION'];
    				$arResult['SECTIONS'][$key]['~DESCRIPTION'] = $arSection['~DESCRIPTION'];
    				$arResult['SECTIONS'][$key]['DESCRIPTION_TYPE'] = $arSection['DESCRIPTION_TYPE'];
    				$arResult['SECTIONS'][$key]['~DESCRIPTION_TYPE'] = $arSection['~DESCRIPTION_TYPE'];
    			}
    		}

    Битриксоидам за строчки платят? Дефолтный шаблон компонента Битрикса, который вшит ядро.

    braun3812, 30 Апреля 2014

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

    +127

    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
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.IO;
    
    namespace Slogan
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("Выбрать текст из файла (1). Написать самому (2).");
                char ch = Convert.ToChar(Console.ReadLine());
                if (ch == '2')
                {
                    Console.WriteLine("Количество слов");
                    int x = Convert.ToInt32(Console.ReadLine());
                    string[] arr = new string[x];
                    Console.WriteLine("Вводите слова");
                    for (int i = 0; i < arr.Length; i++)
                    {
                        arr[i] = Console.ReadLine();
                    }
                    int count = 0;
                    string slogan = "";
                    do
                    {
                        slogan = "";
                        for (int i = 0; i < arr.Length; i++)
                        {
                            System.Threading.Thread.Sleep(20);
                            Random rnd = new Random();
                            int fr = rnd.Next(0, x);
                            slogan += arr[fr] + " ";
                        }
                        Console.WriteLine(slogan);
                        count++;
                    } while (count != arr.Length);
                }
                else if (ch == '1')
                {
                    string slogan = "";
                    Console.WriteLine("Введите имя пользователя Windows");
                    string user = Console.ReadLine();
                    Console.WriteLine("Введите название файла на рабочем столе");
                    string way = Console.ReadLine();
                    try
                    {
                        string input = File.ReadAllText("c:/users/" + user + "/desktop/" + way);
                        Console.WriteLine("Введите название файла на рабочем столе, куда сохранять");
                        string waytosave = "c:/users/" + user + "/desktop/" + Console.ReadLine();
                        string[] split = input.Split(new Char[] { ' ', ',', '.', ':', '\t' });
                        int counter = 0;
                        do
                        {
                            slogan = "";
                            for (int i = 0; i < split.Length; i++)
                            {
                                System.Threading.Thread.Sleep(20);
                                Random rnd = new Random();
                                int fr = rnd.Next(0, split.Length);
                                slogan += split[fr] + " ";
                            }
                            Console.WriteLine(slogan);
                            File.AppendAllText(waytosave, slogan);
                            counter++;
                        } while (counter != split.Length);
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                }
                Console.ReadLine();
            }
        }
    }

    Выводит получаемые слова случайным образом

    cs-slavgorod, 30 Апреля 2014

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