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

    +124

    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
    samples = [(1,14),(2,-66),(3,-414),(4,-1180),(5,-2370),(6,-3726),(7,-4606),(8,-3864),(9,270)]
     
    -- Бесконечная система уравнений для МНК
    system s = zip (matrix s) (column s) where
        matrix = iterate tail . foldr1 (zipWith (+)) . map (\(x,y) -> iterate (*x) 1)
        column = foldr1 (zipWith (+)) . map (\(x,y) -> iterate (*x) y)
     
    -- Сведение бесконечной системы к треугольному виду (первый шаг гаусса)
    triangle (eq:eqs) = (eq : triangle (map (sub eq) eqs)) where
        sub eq1@(a1:as, ae) eq2@(b1:bs, be) = (zipWith f as bs, f ae be) where
            f a b = b - a * b1 / a1
     
    -- Вычисление иксов (второй шаг гаусса)
    calcX n = foldr calc [] . take n where
        calc (a:as, b) xs = ((b - sum (zipWith (*) as xs)) / a : xs)
     
    -- метод наименьших квадратов
    mnk n = reverse . calcX n . triangle . system

    Метод наименьших квадратов.

    http://ideone.com/CsD0ku

    Запостил: bormand, 25 Ноября 2012

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

    • Многовато скобок, не находишь?
      Ответить
      • Есть такое, лишпние скобки вокруг выражений.
        Ответить
    • показать все, что скрытоВ питоне в одну строчку

      m, c = np.linalg.lstsq(A, y)[0]
      Ответить
      • Поясните мысль, господа минусующие.
        Ответить
        • Могу предположить, что минусующие предположили, что там в реализации этого `np.linalg.lstsq` ни разу не одна строчка и, если брать при прочих равных, при наличии такой функции в библиотеке на любом языке это будет одной строчкой, а на Хаскеле так и вообще всего половина строчки и вообще пистон гамно кококо динамикопитушение

          Примерно так они думали, нажимая на минус.
          Ответить
          • Благодарю за объяснение.
            Ответить
            • показать все, что скрытоНа самом деле все очень просто. Ник с сомнительной репутацией увидели. Поста не поняли, а разобраться - мозгов не хватило. А оно... ты пойми, зудит и они нажимают, чтобы снять анальные боли. Но это им не помогает, а только портит их карму и боли усиливаются. Вот такая вот грустная история про их нелегкую судьбинушку. Не попадайте в их ситуацию друзья. Смотрите на жизнь ярче и радуйтесь каждому дню.
              Ответить
              • Жизнь говно. Минусанул.
                Ответить
                • Плюсанул. Ты уже близок к просветлению. Об этом говорит твоя позитивная аватарка. Стремись и добъёшься успехов. Добрые настоящие люди тебе всегда помогут и укажут путь к свету.
                  Ответить
                  • Я тенек люблю.
                    Ответить
                    • Прочитал как "я тинок люблю".
                      Ответить
                    • Прочитал как:
                      Я тянок люблю.
                      Ответить
                      • Фу на тебя.
                        Ответить
                        • показать все, что скрытоТебе не нравятся девчёнки? Небось задрот?
                          Ответить
                          • (минусуют, поясняю, за букву Ё)
                            Ответить
                            • Пояснил по хардкору с вертушки в щи.
                              Ответить
                              • ПАЦАНЫ Я ШЕЛ КОРОЧЕ СЕГОДНЯ ПО ГОРОДУ И УВИДЕЛ ПЕТУХА В МАЙКЕ "Я ЛЮБЛЮ КРЕСТЫ", НУ Я ПОДСКОЧИЛ РЕЗКО И ПЕРЕЕБАЛ ЕМУ В ЩЩИ С ВЕРТУШКИ И ПОЯСНИЛ ЕГО КРИКОМ "НЕ ЛЮБЛЮ ИМПЕРАТИВЩИНУ", ПОТОМУ ЧТО Я УГОРЕЛ ПО ХАСКЕЛУ, ПАЦАНЫ ДУХ СТАРОЙ ШКОЛЫ ЖИВЕТ ТОЛЬКО В ФУНКЦИОНАЛЬНОМ ПРОГРАММИРОВАНИИ, ГДЕ ЕБАШАТСЯ ПО ХАРДКОРУ, ГДЕ ПАЦАНЫ ЖИВУТ МОНАДАМИ, ЛЯМБДА-ФУНКЦИЯМИ И ЕБУТ СИСТЕМУ В РОТ! ТОЛЬКО ХАСКЕЛ ТОЛЬКО ТАЙПКЛАССЫ, ТОЛЬКО БЕСКОНЕЧНЫЕ СПИСКИ!!! ЮНИТИ УЛЬТРАХАРДКОР ХАСКЕЛ!!! пацаны ебашьте крестоблядей, жаберов, императивщиков и ооп-петушков, угорайте по монадам любите Хаскел, лямбды и стрелки! ГОВОРИТЕ ОТКРЫТО И СМЕЛО ПРЯМО В ЛИЦО! ХАСКЕЛ!
                                Ответить
              • >ты пойми, зудит и они нажимают, чтобы снять анальные боли. Но это им не помогает, а только портит их карму и боли усиливаются.
                Хочу рассказать тебе одну историю. Жил-был на белом свете один мальчик, примерно твоих лет.
                И вот как-то раз, начитавшись разных умных форумов в его маленькую головку пришла одна простая мысль.
                Но обо всем по порядку. Однажды он увидел тред где жестоко насмехались над обосравишмся.
                Такое событие потрясло его - ведь человек не виноват что он срёт.
                А немного погодя он нашел сайт, где смеялись над разными обрацами говна.
                Ответить
                • > А немного погодя он нашел сайт, где смеялись над разными обрацами говна.
                  А чем же закончилась эта история?
                  Ответить
                  • Все умерли. Ты сказки штоле не читал?
                    Ответить
                    • А вдруг они поженились, и жили долго и счастливо? По усам текло, да в рот не попало, кхм.
                      Ответить
                      • >По усам текло, да в рот не попало
                        Говно? И слава богу.
                        Сорри. Что-то меня на туалетный юмор пробило.
                        Ответить
                      • и умерли в один день. сказки ты точно не читал.
                        Ответить
                • показать все, что скрытоКулстори бро. Плюсанул. Ждем continuation.
                  Ответить
              • Всё больше и больше его поглощали высокие Идеи о чистоте. И тут наш мальчуган решил изменить мир к лучшему.
                Не умея какать радугой и бабочками, в отличие пони, он твердо решил перестать срать. Совсем.
                День без ненужного побочного эффекта дефекации пролетел незаметно. Говно пару раз подступало, но его удалось сдержать.
                Второй день принес неожиданный сюрприз - наш герой обосрался прямо в переполненной маршрутке.
                Первая попытка перестать срать, успеха не принесла, но это не остановило бесстрашного парня.
                Ответить
              • Был сменен рацион - только низкокалорийная хавка и прошло три дня, но на четвертый его подстергла старая проблема - пришлось добираться домой со штанами полными говна.
                Тогда было принято важное решение - запыжевать анал, а жопу зашить нитками (для верности)
                Дабы не дать говну ни единого шанса.
                Зашивать жопу ему было не впервой - после многочисленных контузий на полях интернет-баталий он овладел этим навыком в совершенстве.
                Баррикадирование анала оказалось делом более проблемным, но он справился и с этой трудностью.
                Прошла неделя. Он стал толстеть.
                Ответить
              • Молекулы говна, подвергаясь диффузии стали проходить через стенки желудка и разносится по всему организму вместе с кровью.
                Говно постепенно интегрировалось в его организм.
                Через месяц процесс завершился и говно поглотило его полностью.
                Так что не осталось ни единого ограна без молекул говна. После чего он сам превратился в Гумно.

                Ныне он своей жуткой вонью отравляет жизнь посетителей разных форумов, ходят слухи, что распознать его можно по приставке Govno у ника.
                Конец.
                Ответить
              • Но из прооверенных источников у нас появилась эксклюзивная фотка данного персонажа на этапе превращения
                http://img.sc/img/5d4fa1fc02b959ad6b57a3456f30d6db.jpg

                Мораль истории в том, что идеальные математические модели, немутабельность, чистота и всё такое неприменимы к нашему неидеальному миру.
                К ним можно приблизится, но всё-равно где-то будет вылазить говно. А если зашить жопу нитками, то получится еще хуже.
                Ответить
                • Пффффф.
                  Ctrl+Shift+Del, Enter
                  Ответить
                • А чьё это фото? Это из психушки?
                  Ответить
                  • Очевидно того, кто посвящает рассказы и стихи говну на данном ресурсе. Любовь так жестока...
                    Ответить
                    • Да тебя тут обсирают, причем с выдумкой. Ведешь себя как и подобает унылому гумну, не способному придумать ничего годного в ответку.
                      Ответить
    • Рокману пора пилить раздел хаскеля. Куча, которую забросали хаски говном воняет неприятно. На данный момент почти вся первая страница кучи им завалена
      Ответить
      • Еще нужен лисп, т.к. когда я за него примусь начну неделю лиспа на говнокоде.
        Ответить
        • После хаскеля даже Scheme какой-то неприятный, а темболее не говорю о CL.
          Ответить
          • Я попал в дивный мир функционального программирования и с пустыми руками я из него не выйду. Так что после хаскеля буду копаться в лиспе, скале, окамле, немерле и в прочем. Скорее всего нужно будет попробовать еще и логическое программирование.

            И кстати, не понимаю, почему все говорят "выучил хаскель, теперь писать на языке X противно". Мне понравился хаскел, но тем не менее я не испытываю никаких трудностей с программированием на других языках, хоть питон, хоть си++, даже недавно писал на паскале.

            Разрыв шаблонов, конечно был, но это больше было похоже не на "блядь, нахуй императивщину, функциональщина рулит", а на "вот оно как, помимо императивщины есть функциональщина и она очень хороша".

            Никакой неприязни к императивному или объектно-ориентированному программированию у меня не появилось.
            Ответить
            • Аналогично. Если и говорил что-то про "императивщина говно, а функциональщина рулит", то только лишь чтобы заставить окружающих леньтяев её изучить.
              Но лисп слишком низкоуровневый среди функциональных языков (естественно, раз под него были процы в своё время). Потому он пративный после высокоуровнего хаски или даже любых других функциональных. А если ещё добавить к этому мою не любовь к динамикопетушащим языкам, тк они не подходят для частичного док-ва корректности программы во время компиляции, то это ставит на лиспе крест. Кстати, в CL есть даже goto, дохрена мутабильности и глобальных переменных.
              Ответить
              • А я все думал, почему у тебя ник "LispGovno"...

                CL и Sheme я вообще хочу выучить не из-за функциональщины, а из-за макросов. Вдохновило вот это видео http://landoflisp.com
                Ответить
                • > хочу выучить не из-за функциональщины, а из-за макросов
                  Золотые слова. Функциональщины там особой нет, но макросы очень доставляют.
                  Land of Lisp, кстати, довольно неплохая книженция
                  Ответить
                • Ну очень крутые макросы есть в Nemerle. На этих макросах весь язык написан. В частности есть возможность использовать статическую строгую типизацию в макросах и все возможности языка, хоть в инет или в базу данных вылазь во время компиляции (и даже компиляции библиотеки во время выполнения программы). Можно хоть SOAP Provider писать, хоть ORM, используя статическую строгую типизацию времени компиляции с подсветкой всех выведенных типов в ide. Лиспомакросы тут сосут причмокивая.
                  Ответить

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