Школоло / Говнокод #8707 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
function det5(var a:atab):double;
{FUNKCIYA VYCHISLYAET OPREDELITEL MATRITSY 5-go PORYADKA a}
begin
det5:=
+a[1,1]*a[2,2]*a[3,3]*a[4,4]*a[5,5]-a[1,2]*a[2,1]*a[3,3]*a[4,4]*a[5,5]
+a[1,3]*a[2,1]*a[3,2]*a[4,4]*a[5,5]-a[1,1]*a[2,3]*a[3,2]*a[4,4]*a[5,5]
-a[1,3]*a[2,2]*a[3,1]*a[4,4]*a[5,5]+a[1,2]*a[2,3]*a[3,1]*a[4,4]*a[5,5]
-a[1,4]*a[2,1]*a[3,2]*a[4,3]*a[5,5]+a[1,1]*a[2,4]*a[3,2]*a[4,3]*a[5,5]
-a[1,1]*a[2,2]*a[3,4]*a[4,3]*a[5,5]+a[1,4]*a[2,2]*a[3,1]*a[4,3]*a[5,5]
-a[1,2]*a[2,4]*a[3,1]*a[4,3]*a[5,5]+a[1,2]*a[2,1]*a[3,4]*a[4,3]*a[5,5]
-a[1,4]*a[2,3]*a[3,1]*a[4,2]*a[5,5]+a[1,3]*a[2,4]*a[3,1]*a[4,2]*a[5,5]
-a[1,3]*a[2,1]*a[3,4]*a[4,2]*a[5,5]+a[1,4]*a[2,1]*a[3,3]*a[4,2]*a[5,5]
-a[1,1]*a[2,4]*a[3,3]*a[4,2]*a[5,5]+a[1,1]*a[2,3]*a[3,4]*a[4,2]*a[5,5]
+a[1,4]*a[2,3]*a[3,2]*a[4,1]*a[5,5]-a[1,3]*a[2,4]*a[3,2]*a[4,1]*a[5,5]
+a[1,3]*a[2,2]*a[3,4]*a[4,1]*a[5,5]-a[1,4]*a[2,2]*a[3,3]*a[4,1]*a[5,5]
+a[1,2]*a[2,4]*a[3,3]*a[4,1]*a[5,5]-a[1,2]*a[2,3]*a[3,4]*a[4,1]*a[5,5]
+a[1,5]*a[2,1]*a[3,2]*a[4,3]*a[5,4]-a[1,1]*a[2,5]*a[3,2]*a[4,3]*a[5,4]
+a[1,1]*a[2,2]*a[3,5]*a[4,3]*a[5,4]-a[1,1]*a[2,2]*a[3,3]*a[4,5]*a[5,4]
-a[1,5]*a[2,2]*a[3,1]*a[4,3]*a[5,4]+a[1,2]*a[2,5]*a[3,1]*a[4,3]*a[5,4]
-a[1,2]*a[2,1]*a[3,5]*a[4,3]*a[5,4]+a[1,2]*a[2,1]*a[3,3]*a[4,5]*a[5,4]
+a[1,5]*a[2,3]*a[3,1]*a[4,2]*a[5,4]-a[1,3]*a[2,5]*a[3,1]*a[4,2]*a[5,4]
+a[1,3]*a[2,1]*a[3,5]*a[4,2]*a[5,4]-a[1,3]*a[2,1]*a[3,2]*a[4,5]*a[5,4]
-a[1,5]*a[2,1]*a[3,3]*a[4,2]*a[5,4]+a[1,1]*a[2,5]*a[3,3]*a[4,2]*a[5,4]
-a[1,1]*a[2,3]*a[3,5]*a[4,2]*a[5,4]+a[1,1]*a[2,3]*a[3,2]*a[4,5]*a[5,4]
-a[1,5]*a[2,3]*a[3,2]*a[4,1]*a[5,4]+a[1,3]*a[2,5]*a[3,2]*a[4,1]*a[5,4]
-a[1,3]*a[2,2]*a[3,5]*a[4,1]*a[5,4]+a[1,3]*a[2,2]*a[3,1]*a[4,5]*a[5,4]
+a[1,5]*a[2,2]*a[3,3]*a[4,1]*a[5,4]-a[1,2]*a[2,5]*a[3,3]*a[4,1]*a[5,4]
+a[1,2]*a[2,3]*a[3,5]*a[4,1]*a[5,4]-a[1,2]*a[2,3]*a[3,1]*a[4,5]*a[5,4]
-a[1,5]*a[2,4]*a[3,1]*a[4,2]*a[5,3]+a[1,4]*a[2,5]*a[3,1]*a[4,2]*a[5,3]
-a[1,4]*a[2,1]*a[3,5]*a[4,2]*a[5,3]+a[1,4]*a[2,1]*a[3,2]*a[4,5]*a[5,3]
+a[1,5]*a[2,1]*a[3,4]*a[4,2]*a[5,3]-a[1,1]*a[2,5]*a[3,4]*a[4,2]*a[5,3]
+a[1,1]*a[2,4]*a[3,5]*a[4,2]*a[5,3]-a[1,1]*a[2,4]*a[3,2]*a[4,5]*a[5,3]
-a[1,5]*a[2,1]*a[3,2]*a[4,4]*a[5,3]+a[1,1]*a[2,5]*a[3,2]*a[4,4]*a[5,3]
-a[1,1]*a[2,2]*a[3,5]*a[4,4]*a[5,3]+a[1,1]*a[2,2]*a[3,4]*a[4,5]*a[5,3]
+a[1,5]*a[2,4]*a[3,2]*a[4,1]*a[5,3]-a[1,4]*a[2,5]*a[3,2]*a[4,1]*a[5,3]
+a[1,4]*a[2,2]*a[3,5]*a[4,1]*a[5,3]-a[1,4]*a[2,2]*a[3,1]*a[4,5]*a[5,3]
-a[1,5]*a[2,2]*a[3,4]*a[4,1]*a[5,3]+a[1,2]*a[2,5]*a[3,4]*a[4,1]*a[5,3]
-a[1,2]*a[2,4]*a[3,5]*a[4,1]*a[5,3]+a[1,2]*a[2,4]*a[3,1]*a[4,5]*a[5,3]
+a[1,5]*a[2,2]*a[3,1]*a[4,4]*a[5,3]-a[1,2]*a[2,5]*a[3,1]*a[4,4]*a[5,3]
+a[1,2]*a[2,1]*a[3,5]*a[4,4]*a[5,3]-a[1,2]*a[2,1]*a[3,4]*a[4,5]*a[5,3]
-a[1,5]*a[2,4]*a[3,3]*a[4,1]*a[5,2]+a[1,4]*a[2,5]*a[3,3]*a[4,1]*a[5,2]
-a[1,4]*a[2,3]*a[3,5]*a[4,1]*a[5,2]+a[1,4]*a[2,3]*a[3,1]*a[4,5]*a[5,2]
+a[1,5]*a[2,3]*a[3,4]*a[4,1]*a[5,2]-a[1,3]*a[2,5]*a[3,4]*a[4,1]*a[5,2]
+a[1,3]*a[2,4]*a[3,5]*a[4,1]*a[5,2]-a[1,3]*a[2,4]*a[3,1]*a[4,5]*a[5,2]
-a[1,5]*a[2,3]*a[3,1]*a[4,4]*a[5,2]+a[1,3]*a[2,5]*a[3,1]*a[4,4]*a[5,2]
-a[1,3]*a[2,1]*a[3,5]*a[4,4]*a[5,2]+a[1,3]*a[2,1]*a[3,4]*a[4,5]*a[5,2]
+a[1,5]*a[2,4]*a[3,1]*a[4,3]*a[5,2]-a[1,4]*a[2,5]*a[3,1]*a[4,3]*a[5,2]
+a[1,4]*a[2,1]*a[3,5]*a[4,3]*a[5,2]-a[1,4]*a[2,1]*a[3,3]*a[4,5]*a[5,2]
-a[1,5]*a[2,1]*a[3,4]*a[4,3]*a[5,2]+a[1,1]*a[2,5]*a[3,4]*a[4,3]*a[5,2]
-a[1,1]*a[2,4]*a[3,5]*a[4,3]*a[5,2]+a[1,1]*a[2,4]*a[3,3]*a[4,5]*a[5,2]
+a[1,5]*a[2,1]*a[3,3]*a[4,4]*a[5,2]-a[1,1]*a[2,5]*a[3,3]*a[4,4]*a[5,2]
+a[1,1]*a[2,3]*a[3,5]*a[4,4]*a[5,2]-a[1,1]*a[2,3]*a[3,4]*a[4,5]*a[5,2]
+a[1,5]*a[2,4]*a[3,3]*a[4,2]*a[5,1]-a[1,4]*a[2,5]*a[3,3]*a[4,2]*a[5,1]
+a[1,4]*a[2,3]*a[3,5]*a[4,2]*a[5,1]-a[1,4]*a[2,3]*a[3,2]*a[4,5]*a[5,1]
-a[1,5]*a[2,3]*a[3,4]*a[4,2]*a[5,1]+a[1,3]*a[2,5]*a[3,4]*a[4,2]*a[5,1]
-a[1,3]*a[2,4]*a[3,5]*a[4,2]*a[5,1]+a[1,3]*a[2,4]*a[3,2]*a[4,5]*a[5,1]
+a[1,5]*a[2,3]*a[3,2]*a[4,4]*a[5,1]-a[1,3]*a[2,5]*a[3,2]*a[4,4]*a[5,1]
+a[1,3]*a[2,2]*a[3,5]*a[4,4]*a[5,1]-a[1,3]*a[2,2]*a[3,4]*a[4,5]....

Жалко, что вся функця не поместилась.
Найдено здесь. http://bbi-math.narod.ru/rosenbrock/rosenbrock.html
Там автор показывает мастерство владения циклами и рекурсиями. А так же демонстрирует каменную выдержку и самообладание, при наборе такого кода.

Запостил: antoha_by antoha_by, (Updated )

Комментарии (31) RSS

  • а я такие хоумпаги люблю и обожаю!
    теплый ламповый интернет...
    Ответить
    • В последнее время наблюдается поток говна, созданного путём кропотливой работы. 8706, 8693, 8692, 8690, 8687, и это только на последних двух страницах. Вовсю идёт подготовка к зачётной неделе?
      Ответить
  • C типом var можно делать что угодно без приведения типа? Это типа замена шаблонной функции template<class Type> double det5(Type a:atab); ?
    Ответить
  • Для генерации кода программы использовалась программа-генератор, код которой был сгенерирован сторонней программой.
    Ответить
    • Ага, это что-то наподобие испытаний у шао-линьских манахов - стойка на одной ноге несколько часов и т.п., только для программистов...
      Ответить
  • Похожей функцией какое-то хитрое матричное выражение считал - посчитал в общем виде в матлабе и скопипастил двухстраничную формулу в текст процедуры.
    Ответить
    • матлаб - это сила! я тоже оттуда кое-какие хитрые формулы выковыривал.
      Ответить
  • > Там автор показывает мастерство владения циклами и рекурсиями.

    Я такое Г генерил циклами 🙂 Было интересно сравнить производительность "плоского" и рекурсивного.
    Ответить
  • я автор кода
    тут комментарии почитал ваши
    проблема в том, что элементы матрицы различаются по величине на 50 порядков (!)
    мне лень было разбираться как там себя поведут разные способы вычисления определителей при таком разбросе величин, поэтому написано тупо
    Ответить
      • а что тут - исследования проводить?

        только предупредить надо было, а то коварно может получиться, если человек заменит эти тупые вычисления какими-нибудь "хорошими" и "рациональными", с красивым кодом, а прога начнет выдавать ахинею
        Ответить
        • Достаточно готовых исследований устойчивости алгоритмов LU разложения, а том уже и до определителей рукой подать.
          Ответить
          • кому надо будет - сделают...
            как говорится если есть силы, есть желание
            Ответить
            • Это точно! Есть шутка на эту тему:
              Как математик решает задачу о расчете устойчивости стола с четырьмя ножками? Довольно быстро он находит решение для стола с одной ножкой и стола с бесконечным числом ножек. Оставшуюся часть жизни он посвящает безуспешным попыткам решить общую задачу о столе с произвольным числом ножек.
              Ответить
  • ребят нельзя так над людьми издеваться, а то я мог и приступ получить
    Ответить
    • Меня не покидает надежда, что он все таки генерил этот код, а не писал руками.
      Ответить

Добавить комментарий

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8