LINUX.ORG.RU
ФорумTalks

Без математики никуда

 


1

2

Для решения каких задач программисту нужно хорошо знать математику?
Ответ желательно вот в такой форме: проблема и какое-то знание из области математики.
Например «я не смогу без глубоко знания логики использовать операторы условного перехода»,
или там «не смогу добавить в массив значение без знания теории множеств».

Перемещено leave из development

★★

Чтобы получить сумму значений n переменных, нужно понимать как работает сложение, а чтобы правильно расставить приоритеты для нескольких мат. операций, также желательно знать приоритетность из математики за первый класс. Дальше можете развивать сами, глядишь и до алгоритмов дойдете. Так что да, без математики никуда.

znenyegvkby ()

Программисту необязательно хорошо знать математику, ему достаточно иметь математический склад ума.

Deleted ()

Для решения задачи написания системы символьных и численных вычислений, всяких там математических моделирований (вычислительная химия, метод молекулярной динамики, механика сплошных сред, моделировать гидрогазодинамику всякую, например http://www.cadmaster.ru/magazin/articles/cm_60_13.html)

SZT ★★★★ ()

Для оценки времени работы нетривиальных алгоритмов нужны какие-никакие знания матана, дискретной математики и теорвера.

Softwayer ★★ ()

Последнее, для чего понадобилась математика:

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

При реализации, кстати, особо и не думаешь, как ты это делаешь, вот потом, когда объясняешь менеджеру, осознаёшь, какие у него пробелы в математике.

anonymous ()

Математика != набор знаний и фактов

alpha ★★★★★ ()
Ответ на: комментарий от Int0l

Это легко проверяется. Сколько здесь, да и вообще в этом мире, адептов, которые отсидели на курсе автоматов? А сколько из них написали «регулярки/парсер» с приемлемым качеством, акромя убогих потуг на лабах? Ровно ноль.

Так и получается, что рядовое днище без ungetch() никого не напишет никакой парсер. Ну как напишет конечно, некоторые и с натуги, но это будет такое фееричное дерьмо, что лучше-бы не писали. А уж если запретить афилапшу - поголовное обделывание обеспечено.

Ну и надо понимать, что автоматы никакого отношения к математики не имеют. Имеет только их модель, но их модель лишь описание реального мира, а не первопричина. И их модель нужна не для понимания самих автоматов, а для коммуникации и обобщения знаний. Ну и есть понимание ограничить вбивание в пустую башку набора догматов из какой-то модели - подменяя восприятия - это не понимание, хоть и основа обучения 99% автоматам.

В конечном итоге любой школьник из примитивного поиска последовательностей find(find(m, str[0]), str[1]) выйдет на автоматы, ибо предрассчитанное тоже самое.

registrant27492 ()
Ответ на: комментарий от Softwayer

Оценка времени не нужна. Оценка нужна для сравнения, а не для реализации, либо для оптимальное реализации. Тем более в раельном мире этой оценкой разве что подтереться можно.

registrant27492 ()
Ответ на: комментарий от kep

Чем текущий мер программирования отличается от завода? Можно мне узнать - какая-такая особенная грамотность нужна тебе - еникею, либо иного адепту, ваяющему сайтецы на пхп, гуйню на жабке и иже с ним - вообще любой планктон?

registrant27492 ()
Ответ на: комментарий от registrant27492

Есть непреодолимые блоки, тяготы и проблемы для людей с не математическим или не с около математическим складом ума, причем мы не говорим о магии/талантах или чем-то таком, чистая биология, чистая генетика.

Вот только он не про еникея, а разработчика спрашивает.

kep ()
Ответ на: комментарий от kep

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

Int0l ★★ ()
Ответ на: комментарий от znenyegvkby

Я конечно понимаю, что спрашивать за логику с адепта с жабкой на аватаре - это слишком сильно, но всё же. Вот ты пишешь:

расставить приоритеты для нескольких мат. операций
мат

Давай попроще. Т.е. это не свойство мира - это свойство именно «математики». Твои потуги равносильны «нельзя без знания устройства конкретного сортира понять порядок деталей в этом сортире», но какое это отношение имеет к сортирам, либо к реальному миру?

Давай на более высоких примеров - «понять приоритеты операций в пхп можно только изучив пхп» - но эти приоритеты свойство пхп - естественно для них нужен пхп. Но для не пхп это не работает, да и к самому производному этих операций - отношения не имеет.

Математика - такой же язык, как пхп - а конкретные конструкции и их правила - эта правила языка, а язык лишь представление - как слово «сортир» - это не сортир, а представление понятия сортир.

глядишь и до алгоритмов дойдете

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

В твоей жабке алгоритмы описаны на жабке и для их чтения нужна жабка, но жабка к ним никакого отношения не имеет - это лишь описание. И жабка лишь даёт тебе возможность их прочитать.

Ваша логика настолько не логика, что мне просто плохо от осознания возможности её существования.

registrant27492 ()

я не смогу без глубоко

Почему-то мой взгляд зацепился за эту часть сообщения и не хочет идти дальше. Давайте поговорим, кто что в ней видит?

Zhbert ★★★★★ ()
Ответ на: комментарий от Solace

Какие 10? Чем И от ИЛИ отличается дети и в 3 года понимают.

anonymous ()
Ответ на: комментарий от Solace

А в чем проблема? Логические операции осваиваются ребенком в лет так 10.

Аутизм. Интерпретатор лиспа на хаскелле легко сварганит, а вот за хлебом сходить уже не осилит.

anonymous ()

Зеленый мимо шел.

Ну дискретную(Булева алгебра/Теория Графов/etc) думаю надо знать.Она применяется в алгоритмах.

Deleted ()

Везде, где требуется оптимизация (man теория оптимизации), везде где требуется более-менее серьёзная работа с 3D и даже с 2D графикой (а-ля GIMP) (man геометрия, стереометрия, векторный анализ, тензорная алгебра), везде, где требуется теория конечных автоматов, везде где требуется теория игр (написать бота для игры и сбалансировать игру), везде где требуется что-то считать и вычислять (man численные методы). И т.д..

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

peregrine ★★★★★ ()

Мне лень тебя в чем то убеждать, поработай и сам все поймешь. Только вот куда тебя возьмут с твоими школьными знаниями? На пыхе кмски править? Там математика не нужна.
И да, почему этот унылый тред не толксах?

comp00 ★★★★ ()
Ответ на: комментарий от anonymous

Любой двухлетний понимает выражения вида «или сожрешь эту кашу ИЛИ получишь по жопе».

Я про ТС. Он лисп на хаскеле и хаскель на лиспе задрачивает, а if осилить не может.

anonymous ()
Ответ на: комментарий от registrant27492

Ты болен? Оценка времени нужна для того, чтобы понимать какой характер тупления будет иметь твоя программа/алгоритм при увеличении данных на вход.

peregrine ★★★★★ ()
Ответ на: Зеленый мимо шел. от Deleted

Re: Зеленый мимо шел.

Так же как и линейную алгебру. Это всё минимум, который сложно не знать и лучше знать чем не знать.

anonymous ()
Ответ на: комментарий от Int0l

А ты без знания теории множеств и булевой логики смогешь спроецировать 2 таблицы БД? Чисто прогерская задачка.

comp00 ★★★★ ()
Ответ на: комментарий от Int0l

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

peregrine ★★★★★ ()
Ответ на: комментарий от peregrine

У тебя тоже очень узкое понимание математики. Математика - это не подсчет и вычисления.

И она нужна не «везде, где ...», а просто «везде».

alpha ★★★★★ ()
Ответ на: комментарий от peregrine

Твоя прыщавая оценка времени никакого отношения к реальности не имеет. В реальности у тебя есть кеш, в реальности неверное предсказание ветвления может стоить в разы дороже чем лишняя степень в O(n^m).

anonymous ()

как правило, это поиск любого вида

targitaj ★★★★★ ()
Ответ на: комментарий от King_Carlo

Рассуждает о языках, а сам опечатался в слове «английского».

t184256 ★★★★★ ()
Ответ на: комментарий от alpha

И она нужна не «везде, где ...», а просто «везде».

Ты в курсе, что математика уже лет сто как в глубокой жопе кризисе?

anonymous ()

Го минимизировать длинные «операторы условного перехода» без знания матлогики.

Leron ★★ ()

Посмотрю я на тебя как ты без математики будешь предсказывать рост потребления ресурсов сервиса через пол года

vertexua ★★★★☆ ()
Ответ на: комментарий от alpha

И она нужна не «везде, где ...», а просто «везде».

Дворник, когда улицу подметает тоже математикой рассчитывает время: мол 10 метров улицы я подмел за 5 минут, значит всю улицу уберу за 2 часа? Мне кажется, что на глазок он это оценивает, хотя тебе, наверно, виднее.

Математика - это не подсчет и вычисления.

Нет, арифметика это подсчёт и вычисления. Математика - это формалистика, полученная из аксиоматики.

peregrine ★★★★★ ()
Ответ на: комментарий от anonymous

Не надо инсинуаций, я почти каждый день сам хожу за хлебом!

Ivana ()

Да, не просто без глубокого, вообще без знания математики можно программировать.

filequest ()
Ответ на: комментарий от vertexua

Ждём пока цпу не поднимется до 60%, а если поднялось выше - клянчим у хозяина новую тачку, либо латаем дыры и завём серьёзных дядей из конторы вендора, либо просто зовём дядей. Вот и весь алгоритм жабиста.

Либо «щас 2тачки и тыща - значит 10тачек и пять», либо «щас цпу 20 и тыща, а будет 60 и 3». Правда это никогда не работает, но кому это интересно - каждый жабист он потомственная ванга.

А об осведомлённости жабистов уже говорит банальная вера «нельзя больше 70%», либо сколько щас там.

registrant27492 ()
Ответ на: комментарий от peregrine

мол 10 метров улицы я подмел за 5 минут, значит всю улицу уберу за 2 часа?

И опять про вычисления. Ещё скажи сдачу в магазине помогает считать.

Как-то ехала в поезде перед сессией, обложившись учебниками, и сосед по купе поглядев на это говорит: «А я тоже математик!». Я прониклась: «да, и в какой области?» - «Рассчетчиком на заводе работал. Нам цифры приносили, мы их в формулу подставляли и вычисляли результат. Калькуляторов и компьютеров-то не было..».

alpha ★★★★★ ()
Ответ на: комментарий от comp00

Наверно смогу. Но только когда узнаю что значит «спроецировать 2 таблицы БД».

Int0l ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.