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

    +1

    1. 1
    std::AIDS

    an0nym, 04 Октября 2013

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

    −124

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    recognizer = [SMRecognizerConvNet alloc];
            
            dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,
                                                     (unsigned long)NULL), ^(void) {
                recognizer = [recognizer init];
                loaded = true;
                
                DLog(@"recognizer loaded");
            });

    Спонадобилось воскресить один старый проект, а там нашлось такое...

    tirinox, 04 Октября 2013

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

    +77

    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
    #include <iostream>
    using namespace std;
    
    int binsearch(int* arr, int s, int r, int l, int t){
        int m=(l+r)/2;
        if (*(arr+m) == s) return m; // t - искомое
        if (m == l || m == r) return 0;
        if (*(arr+m) < s) binsearch(arr, s, m, r, t);
        else binsearch(arr, s, l, m, t);
        }
    
    int main()
    {
        int n, k;
        cin >> k;
        cin >> n;
        int A[n-1];
        for (int i = 0; i < n; i++){
            cin >> A[i];
        }
        cout << binsearch(A, k, n-1, 0, 0);
    }

    Требуется найти число K в упорядоченном массиве из N элементов и
    определить чему равен номер соответствующего элемента массива.
    Если элемент не найден, то вывести 0.

    Входные данные
    В первой строке расположено искомое число К.
    Во второй - количество элементов в массиве N <= 10000.
    Далее расположены N целых чисел, упорядоченных по возрастанию.

    Выходные данные
    Выведите наименьший номер найденного значения, или 0, если элемент не найден.

    Проблема у меня в том, что не получается найти минимальный из подходящих ( Помогите пофиксить!

    aesc_smirnov, 03 Октября 2013

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

    +105

    1. 1
    2. 2
    3. 3
    4. 4
    if (row["Enable"].ToString().ToLower() == "true" || row["Enable"].ToString() == "1")
             chState.Checked = true;
     else if (row["Enable"].ToString().ToLower() == "false" || row["Enable"].ToString() == "0")
             chState.Checked = false;

    В начале метода такая вот проверка.
    Дальше да же читать не стал.

    pipjaka, 03 Октября 2013

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

    +139

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    public Agent[] GetChildAgents(Agent parent)
    {
    	if (parent == null)
    		throw new NullReferenceException();
    		
    	// ...some code...	
    }

    Перед смертью не надышишься, зачем оттягивать неизбежное.

    yamamoto, 02 Октября 2013

    Комментарии (21)
  6. Java / Говнокод #13888

    +80

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    ...
    SomeObject o = null;
    try {
        o = someGetOperation();
    } catch (Exception e) {}
    
    try {
        o.doSomeMethod();
        ...
    } catch (Exception e) {}
    ...

    1. второй try/catch это просто защита от NPE, который возникнет, если не прошел первый try
    2. catch-секции приведены как они есть в проекте - пустые и ловится всегда Exception

    в 95% проекта (>1000 классов) используются такие конструкции

    tir, 02 Октября 2013

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

    +156

    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
    foreach ($item as $prop) {
                if ($prop['tag']==$this->props[0]){
                    $new_item['sku']=(int)$prop['value'];
                } else {
                    if ($prop['tag'] == $this->props[1]) {
                        $new_item['name']=$prop['value'];
                    } else {
                        if ($prop['tag'] == $this->props[2]) {
                            $new_item['price']=(float)$prop['value'];
                        } else {
                            if ($prop['tag'] == $this->props[3]) {
                                $new_item['is_spec']=(float)$prop['value'];
                            } else {
                                if ($prop['tag'] == $this->props[4]) {
                                    $new_item['spec_price']=(float)$prop['value'];
                                } else {
                                    if ($prop['tag'] == $this->props[5]) {
                                        $new_item['old']=(float)$prop['value'];
                                    }
                                }
                            }
                        }
                    }
                }
            }

    XML бессмысленный и беспощадный

    madfriend, 02 Октября 2013

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

    +151

    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
    class A {
        public function getUser() {
            .....
        }
        public function init() {
            ......
        }
    }
    
    class B extends A {
        ........
        // close some parent methods from outside
        public function getUser () {}
        public function init () {}
    }

    труЪ ООП: Инкапсуляция посредством полиморфизма!

    ragnar, 02 Октября 2013

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

    +149

    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
    <h2>Задать вопрос online</h2>
    <?
    if (isset ($_POST['message'])) {
    $name = @ trim ($_POST['name']);
    $contact = @ trim ($_POST['contact']);
    $phone = @ trim ($_POST['phone']);
    $message = @ trim ($_POST['message']);
    if (! $name or ! $contact or ! $message) echo ('<p style="color: red">Необходимо заполнить поле e-mail</p>');
    else { mail ("[email protected]",
          "Новое сообщение на сайте!",
          "$message \n\n E-mail: \n $contact", 
    	  "\n\n Телефон: \n $phone",
          "Content-type:text/plain; charset=utf-8");
          echo ('<p style="color: green">Ваше сообщение отправлено, спасибо!</p>');
          $_POST['name'] = $_POST['contact'] = $_POST['phone'] = $_POST['message'] = '';
    }
    }
    ?>
    <form method="POST">
    <p>Ваше имя:</p>
    <input name="name" value="<?=@$_POST['name'];?>"><br><br>
    <p>E-mail*:</p>
    <input name="contact" value="<?=@$_POST['contact'];?>"><br><br>
    <p>Телефон:</p>
    <input name="phone" value="<?=@$_POST['phone'];?>"><br><br>
    <p>Ваше сообщение:</p>
    <textarea name="message"><?=@$_POST['message'];?></textarea><br><br><br><br><br><br>
    <p><input type="submit" value=" Отправить "></p>
    </form>

    bugaaa, 02 Октября 2013

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

    +80

    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
    /**
       * Форматирует double, c arround кол-вом знаков после запятой
       * @param d double
       * @param arround int
       * @return String
       */
      public static String formatDouble(double d, int arround) {
        if (arround > 6) {
          throwIllegalFormat();
        }
        StringBuffer sb = new StringBuffer(10);
        boolean minus = d < 0;
        if (minus) {
          d = -d;
        }
        for (int i = 0; i < arround; i++) {
          d *= 10;
        }
        long l = (long) (d + 0.000000001);
        do {
          char digit = (char) ('0' + (l % 10));
          l = l / 10;
          sb.append(digit);
          if (--arround == 0) {
            sb.append('.');
          }
        } while (l != 0 || arround >= 0);
        if (minus) {
          sb.append('-');
        }
        return sb.reverse().toString();
      }

    glprizes, 02 Октября 2013

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