Почитал тут некоторые темы и заметил что многие рекомендуют начинающим программистам изучать математику.Но я не понимаю зачем?
Напримерзачем нужно знать какие бывают интегралы,их свойства,и учить всякие формулы?
Нам еще ни 1 задачи не дали где пригодились бы любые знания по математике кроме элементарных.(заканчиваю 2 курс)И вообще смутно представляю себе программу где незаменимо потребуются интегралы или что то в этом роде.
Действительно ли так важна математика?Прошу наставьте меня на путь истинный:)
11 июля 2009 в 22:05
Я когда начинал учится страх не любил МАТЕМАТИКУ, думал "зачем она в программировании? " А потом осознал что она очень помогает развивать логику мышления дабы выходить из сложных ситуаций в програмировании:)
3 июня 2009 в 18:03
Не буду холиварить.
3 июня 2009 в 15:04
Нужна, нужна… Ток башка кипит %)
3 июня 2009 в 14:04
Убиваем кросплатформенность… А как же математическое моделирование процесса?
2 июня 2009 в 20:01
Я не фанатик и С-Style строки мне не нравятся, эти буферы, постоянное выделение памяти. Я их и не использую, .NET рулит
2 июня 2009 в 18:01
Развивает-помогает… Даже простую программу обработки изображений без знания маиематики не написать, всякие уравнения Вебера-Фехнера, интегралы и т.п. матан сразу наматываются, а уж о что говорить о чем-то сложне. С трёхмерной графикой дружат те, кто в состоянии понимать векторы и матрицы для начала. Фильтры изъятия шумов тоже не с помощью знаний по истории и литературе пишутся. Понимание работы отдельных алгоритмов сортировок с математической точки зрения поможет подобрать нужную в конкретном случае. Про правильное конструирование графов и деревьев люди, не учившие математику, даже не в курсе. Нет, матан не нужен, нафиг он? Быдлокодерствовать и без него можно.
24 мая 2009 в 18:05
Математика нужна. Если у Вас будет предмет "Мат. методы", то поймешь почему
24 мая 2009 в 17:04
дискретная математика хорошо развивает логику, ну и обычная алгебра, разумеется, очень важна
20 мая 2009 в 21:05
Ну вобще-то и так понятно, что все должно быть как можно проще и с точки зрения самого кода (предложений на ЯП) и с точки зрения того объема вычислительной работы, который он порождает. А оттестриовать далеко не все можно и строго доказать правильность работы… не мне об этом рассказывать. Ладно… холивар чего с ним поделаешь…
Определенно есть те кому вобще не надо, есть те кому очень надо.
20 мая 2009 в 21:05
о, холивар!
какого вы мнения о C-style строках?
кому не понятно – процитирую Джоэля:
Шлемиль устроился на работу маляром и должен был наносить разметку посередине дороги. В первый день он взял бочку краски и разметил 300 метров дороги. "Неплохо! – сказал босс. – Ты быстро работаешь!" И заплатил ему денежку. На следующий день Шлемиль осилил только 150 метров. "Ну что ж, не так здорово, как вчера, но ты все равно быстро работаешь. 150 метров – это не мало", – сказал босс и заплатил ему денежку. Еще через день Шлемиль расчертил 30 метров дороги. "Всего 30 метров! – рассвирепел босс. – Это никуда не годится. В первый день ты сделал в десять раз больше. Что случилось?"
"Ничего не могу поделать, – говорит Шлемиль. – С каждым днем приходится все дальше и дальше уходить от бочки с краской".
20 мая 2009 в 18:04
ну наф эту математику))
20 мая 2009 в 18:04
#71
Maksim [ADM]empire-of-dragons Sozinov
20 мая 2009 в 18:41
ну наф эту математику))
Угу, а потом из-за таких как ты, поезда с рельс сходят и ракетные двигатели взрываются
20 мая 2009 в 12:01
Без знания математики – это не программист. Нужна.
20 мая 2009 в 11:01
2 Тимур Багаутдинов
> О да.. и вы, Леонид, хотите сказать, что всегда это делаете…
нет, не всегда. скорее, даже, только в исключительных случаях. но, как заметил Жека, эти умения пригождаются и без применения по назначению.
20 мая 2009 в 2:00
познание мира -> физика, химия и т.д. -> математическая модель реального процесса -> аналитическое решение -> численное решение на компьютере для применения в жизни -> самолет, компьютер, лекарство, автомобиль, дом
19 мая 2009 в 22:03
И вообще, все пинки математики следует удалять, чтоб не плодить холиваров… Вопрос был "зачем нужна математика", вот на него и следует отвечать.
Вообще, как справедливо намекнул Жека – само программирование это уже математика. Если же касаться конкретных видов математик, то тогда, может, вопрос ответа и не имеет. Но если говорить о математике вообще – то вопрос, как он задан, не имеет смысла. Программист – по определению, человек, занимающийся программированием. Программирование – это раздел математики. То есть вопрос задан в виде "Зачем программистам программирование?"
Не удивительно, что ни у кого нет агргументов для ответа на вопрос =))) Удивительно, что находятся таки аргументы против О_о
P.S. Жека, может, будем таких банить, как не относящихся к программистам?
19 мая 2009 в 22:02
Если знать, как делается оценка сложности и доказательство корректности, то, даже не делая этого, будешь проектировать программу с мыслью "хорошо бы то, что я напишу, полегче поддавалось оценке сложности и доказательству корректности". В результате, скорее всего, и так получится простая, понятная и корректная программа.
Это как с юнит-тестированием: не столь важно юнит-тестировать программу, как важно, чтобы она была юнит-тестируемой.
19 мая 2009 в 22:02
Не понимаю, как умные люди могут не видеть за деревьями леса и думать, что математика нужна только для того, чтобы пользоваться ее методами.
19 мая 2009 в 20:02
Даже то что сказал Леонид не считаю математикой как отдельной областью. (повторюсь) Математика имхо мехмат, остальное-посмотрел, изучил, где надо применил. А в команде достаточно одного такого как Леонид написал и это не значит что он самый умный при этом, он вполне может другого не уметь.
19 мая 2009 в 19:05
О да.. и вы, Леонид, хотите сказать, что всегда это делаете…
19 мая 2009 в 14:04
> в некоторых задачах конечно нужна – например цифровая обработка сигналов, моделирование физических процессов итд.
а также: составление алгоритма, оценка сложности алгоритма, доказательство получения правильного результата, и т.п.
19 мая 2009 в 11:05
ну-ну…
19 мая 2009 в 0:02
в некоторых задачах конечно нужна – например цифровая обработка сигналов, моделирование физических процессов итд. Но вообщем я считаю что математика для прогера как химия для повара – теоретически знать полезно (и поваров вроде даже химии учат в пту))) но практически почти ни когда не применима.
18 мая 2009 в 19:01
Интересно, а современное программирование ставит перед математикой такие задачи, на которые пока она не может ответить?
11 мая 2009 в 15:02
Нужна и притом очень. я правда пока только первый курс заканчиваю, но уже успела убедтиться, что без нее никуда.
10 мая 2009 в 19:02
Конечно нужна, какже без неё то??? Проблема современных учителей в том, что они дают теорию, но не объясняют для чего она нужна на практике, и как оказывается всё это вполне может использоваться в довольно распространённых областях.
10 мая 2009 в 13:03
Иван, х*ново
Математика на самом деле нужна программисту. Вопрос лишь в том, на каком уровне. Понятно что это не уровень обласных олимпиад, но те же теорию графов, методы выч. геометрии, сортировки, комбинаторики – всё это сейчас включат в дисциплину математики, и изучают в вузе.
Быть хорошим программистом в некоторых областях можно и без знаний математики (исключая примитивный уровень школы).Примерами тому web-разработка и автоматизация администрирования.
Но в решении проектов другого рода – мат аппарат нужен, и очень сильный.
8 мая 2009 в 6:05
Вы наверное неглупых оболочек еще просто не писали. Все тут про алгоритмы, а их еще надо сформулировать, вникнув в предметную область, описание которой обычно очень нелегко и неполно достается от заказчиков.
Для меня математика – то что проходят на мехмате, остальное вполне иногда может пригодиться.
8 мая 2009 в 2:03
программист без математики просто дизайнер, хорошо знающий синтаксис некого языка
зазубривать алгоритмы нельзя, их надо чувствовать, понимать, через себя пропустить в конце-концов.
не зная азов- не дойдете до макушки..Математика не прислуга, а фундамент, основа.
конечно, можно заметить большинство заказов- это глупые оболочки.
Вопрос в том на какой уровень вы претендуете…
7 мая 2009 в 22:04
Программисту в первую очередь нужна логика и усидчивость, что развивается далеко не только математикой, я скорее больше мозг развиваю на практике и самообучении, то что в универе проходили и проходим проще кажется.
7 мая 2009 в 22:01
Знаки эмоции (в простонародье смайлы) – это попса. А тут люди собрались серьёзные.
….
8-/
7 мая 2009 в 20:03
я понял ироничность, но его комент вызвал у меня смех. он просто так это серьезно написал, без лишних знаков имоции
7 мая 2009 в 16:03
Ты бы еще иронию видеть научился )))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
7 мая 2009 в 16:03
P.S. )))
7 мая 2009 в 16:01
хахаха насмешил, глупее вопраса не слышал. ты бы еще спросил: зачем хирургу скальпель )))))))))))))))))
7 мая 2009 в 7:01
Зачем программистам логическое мышление?
6 мая 2009 в 23:02
Криптография,нейронные сети,работа с видео,аудио и тд форматами
Куда тут без хотябы тойже линейной алгебры и теории вероятностей?
в алгоритмах без теории графов никак например. И таких примеров куча.
Если хочешь программировать нечто большее чем нахождение максимума в массиве то математика нужна одназначно.
6 мая 2009 в 23:01
Александр, анатомии в современном ее понимании ибн Сина точно не знал
6 мая 2009 в 22:00
возможно вся математика и не понадобиться, но логика, геометрия, векторная алгебра, интегрирование и дифференцирование нужны однозначно. любая программа сводиться к алгоритму и решению математических! задач (уравнения, системы итд). А научить компьютер тому, что не умеешь сам весьма проблеатично. А криптография вообще сплошная вышка.
6 мая 2009 в 9:03
ибн Сина не от сохи пошёл в медицину, а изучал опыт, накопленный до него. Другое дело, что он этот опыт систематизировал и дополнил собственными изысканиями.
Так что пример некорректный.
6 мая 2009 в 8:03
практиковал же как-то Абу Али Хусайн ибн Абдаллах ибн Сина.
6 мая 2009 в 8:03
#40 это сейчас никак а вот в древности…в древности хирургия как такова была варварской…и начало брала в Муждуречьи и Китае(где кстати было первое подобие анестезии). У Инков была практика делать лоботомию. А а Средневековой Европе были случаии когда врачи выкапывали трупы для исследования строения человека…
отсюда вывод, не все рождается готовым, ко всему надо идти )))
6 мая 2009 в 2:04
Можете ответить мне на вопрос: как может практиковать хирург без знания анатомии?…
5 мая 2009 в 23:00
Народ ну без математики никак нельзя, ибо она поворачивает мозг кодера в правильное русло)
5 мая 2009 в 20:02
Математика разная бывает, то что я применяю, не считаю чем-то сверхъестественным. А насчет быдлокодеров… Думаешь заказчику важно как написана программа?
5 мая 2009 в 20:02
>> А насчет быдлокодеров… Думаешь заказчику важно как написана программа?
смотря что за заказчики
5 мая 2009 в 18:04
Вот это вопрос!.. 0_о
+1 к #35. Слабо представляю себе информационную систему, в которой не было бы математики.. Ни одной такой не писала)))
20 марта 2009 в 4:02
"Почитал тут некоторые темы и заметил что многие рекомендуют начинающим программистам изучать математику.Но я не понимаю зачем?"
А зачем хирургам изучать анатомию? Скальпелем махать научился и вперёд!
А в действительности грустно, что огромное количество быдлокодеров пишут быдлокод, который работает с грехом пополам. Но ещё хуже, что потом эти быдлопрограммы умудряются втюхивать за нехилые бабки….
19 марта 2009 в 23:02
не просто может пригодиться, а постоянно требуется.
19 марта 2009 в 20:04
#32
вот, вот… смотря что программировать… может любой раздел науки понадобится, и не обязательно математика…
чтобы вообще хоть что-то программировать, нужно логическое алгоритмическое мышление – это основа программирования… хотя математика тоже может пригодиться…
19 марта 2009 в 20:01
Мозгу развивает…а еще, смотря что программировать) Там еще может и физика, и черт лысый понадобится…
19 марта 2009 в 18:01
#15, у меня с английским все хорошо)я думал наоборот у тебя плохо =)
Знаю много примеров, когда люди ламеры и подписывают свой комп, блютус на телефоне, всякие никнеймы -"хакер", вот это как-то глупо)
А автор пришел найти ответ, он его нашел а твой пост что он нуп , вроде ответа ему не дает)по крайней мере обоснованного=)
19 марта 2009 в 13:05
Вижу – большинство за математику. Что ж, я присоединяюсь… хотя думал раньше, что математика то и не очень нужна программисту, а главное логическое мышление…
19 марта 2009 в 13:05
Всем спс пойду учить математику D:
19 марта 2009 в 13:00
Математика нужна потому, что:
– Она заставляет научиться четко формулировать и понимать четкие формулировки. Это одно из самых важных качеств для программиста;корреляция между умением формулировать и умением программировать среди моих знакомых и коллег – 100%. Те, кто умеет формулировать – придумывает красивые, четкие, непротиворечивые решения, а уж как их объясняют – заслушаешься. Те, кто не умеет – придумывает "магические", исполненные хаков, а потом долго затыкают новыми хаками дырки в старых хаках.
– Она содержит разделы, обладающие непосредственной важностью для программирования.
– Она – хоть это и не до всех и не сразу доходит – учит видеть общее, учит абстракции. Полагаю, полезность этого для программиста пояснения не требует.
В качестве блестящих примеров того, как элементарная абстрактная алгебра творит чудеса, можно привести finger trees и префиксные суммы:
Две потрясающие статьи от кудесника Дэна Пипони:
//blog.sigfpe.com/2008/11/approach-to-algorithm... – как очень просто параллелизовать задачу вычисления максимальной суммы подотрезка, сведя ее к перемножению матриц над полукольцом (Int,+,max)
//blog.sigfpe.com/2009/01/fast-incremental-regu... – как очень просто сделать инкрементальный мэтчинг регулярных выражений над сколь угодно большими текстами, сведя задачу к свертке над моноидом эндоморфизмов множества состояний конечного автомата при помощи finger trees
Статьи, по мотивам которых Пипони написал вышеупомянутое:
//citeseerx.ist.psu.edu/viewdoc/summary?doi=10…. – Prefix sums and their applications : статья про "префиксные суммы" – тоже очень универсальная концепция, выражающаяся в терминах моноидов, колец или похожих структур, предназначенная для параллелизации алгоритмов, и позволяющая распараллелить огромный класс задач – от вычисления суммы набора чисел или сравнения гигантских строк, до выполнения radix sort.
//apfelmus.nfshost.com/monoid-fingertree.html – сами finger trees: чрезвычайно универсальная структура данных, позволяющая сделать параллельной или инкрементальной любую свертку над любым моноидом
В конце концов, сам MapReduce, повсеместно применяющийся сейчас во всех задачах обработки больших массивов данных, основан на ассоциативной свертке.
Вот прекрасная статья, анализирующая MapReduce с этой точки зрения: //www.cs.vu.nl/~ralf/MapReduce/paper.pdf
19 марта 2009 в 12:05
математика не делает людей умнее, она учит их думать, а нам без этого никак
19 марта 2009 в 12:02
22, "Да за такие слова и по лицу получить можно."
Ого. Павел, а не думал, что пока ты математикой занимался, он на кудо ходил?) Уважительней надо быть к людям.
Достаточно было сказано выше по теме.
У меня в университете в лекционном зале, где проводятся все лекции мат. кафедры, висит на стене плакат с надписью: "Математик может все."
Трудно не соглашаться с очевидным.
19 марта 2009 в 12:02
24, "сам подумай, математика создала законы, все подчиняется им. можно сравнить с царями, создающими законы, или правительством. что в общем одно и тоже."
Математика не создавала законы. Она их описала.
19 марта 2009 в 12:00
или хотябы соседи прокричат чет путное!!! )))
19 марта 2009 в 12:00
# 20 "Нифига подобного. Исходя из того, что все другие науки постоянно используют математику, она как раз прислуга наук))"
сам подумай, математика создала законы, все подчиняется им. можно сравнить с царями, создающими законы, или правительством. что в общем одно и тоже.
>матиматега – царица наук . <- точка
19 марта 2009 в 11:04
У меня на первом курсе был мат. анализ, тоже думал, нафиг он нам нужен. На втором курсе понял, что нужен… Предмет был вычислительная математика. В ней нам все разложили по полочкам, расказав про то как оценивать сложность алгоритмов математическими методами, дали понять как реализовывать модели на ВМ. А в моделировании(чем я собственно и буду заниматься в будущем) так вообще не обойтись без математики и мат. статистики. В 5ом семестре писал курсовую по выч. мату: "Моделирование ткани на прямоугольном столе с использованием метода частиц и прямого метода Эйлера". И это еще самый простой вариант был (самый сложный – пирамида). Чтобы написать программу пришлось решать задачу Коши для динамической модели. Так что теперь играя в игры (редко уже, правда), я не говорю, что те кто писал игру – м**аки, потому что знаю, насколько это тяжкий труд.
Говорить что "Математика-фигня, нафик не нужна"… Да за такие слова и по лицу получить можно. Вся вычислительная техника основана на математике. Думать надо, прежде чем че-то ляпнуть. А если нечем думать, то постучаться головой об стену, может че дельное от стенок черепной коробки отвалится и на язык попадет…
19 марта 2009 в 11:01
Совершенно правильно, нужна, причем постоянно, но
>матиматега – царица наук . <- точка
Нифига подобного. Исходя из того, что все другие науки постоянно используют математику, она как раз прислуга наук))
19 марта 2009 в 11:01
>матиматега – царица наук . <- точка
не будь её ни одной другой науки бы небыло!!!
19 марта 2009 в 11:00
правильно все зависит, для чего тебе программирование, математика очень часто встречаеться при программировании игр… или написании алгоритмов шифрования, или при программирование различных вещей для лаборатории…
19 марта 2009 в 10:05
Все зависит от предметной области.
Для работы с массивами данных 100% нужна.
Для программных комплексов стратегических расчетов, анализа, планирования, моделирования …
19 марта 2009 в 9:03
нужна, ещё как.
пару примеров -
посчитать порядок роста рекурсивной функции…
составить (или хотябы разобраться в поиске)алгоритм поиска по массиву…
19 марта 2009 в 7:03
#8 Ну, олимпиадные задачи – это, конечно, здорово. Вот только решать олимпиады и писать реальные проекты – это немного разные вещи. (Даже не немного))) В олимпиадах почти все задачи высосаны из пальца и в среднем, имеют небольшой объем. Я не спорю, это полезно для соображалки и т.д., вот только это еще не все, что нужно программисту)
Если подразумевать под математикой кучу формул, то да, она редко бывает нужна. А вот если математический аппарат и, как следствие, логику – то это нужно будет всегда. И еще многие вещи в теоретической информатике построены на математике, а теор. инфа – это O(), булева алгебра, теория автоматов, методы компиляции и много еще чего вкусного))
19 марта 2009 в 7:02
^_^ А теперь прочитай правильно Фузя… Если бы твои познания в Английском были чуть больше, ты бы понял что первая "X" читается как "Кс". Сообственно не суть важно.
Все равно вопрос глупый и автар ламер.
19 марта 2009 в 5:04
#5 сказал, что автор нуб и позорник, а я считаю нуб и позорник тот, кто пишет себе в графу никнейм "хакер" ебана=)
19 марта 2009 в 2:00
Математика-фигня, нафик не нужна…
19 марта 2009 в 1:02
Пользу дискретной математики очень тяжело переоценить.
19 марта 2009 в 1:00
матиматега – царица наук . <- точка
19 марта 2009 в 1:00
зачем-зачем?
гонорар считать
19 марта 2009 в 0:05
Математика это не только линейная алгебра и мат. анализ. Это ещё и теория групп, теория графов, множеств и т.д. Кроме того, математика, как уже сказали, формирует определённый склад мышления.
Какой-то класс задач можно кодить без математики. Но в институте закладывается база, фундамент. Чем фундамент основательнее, тем больше есть возможностей по возведению на нём чего-либо в будущем.
Как говорил Абдула в "Белом солнце пустыни": "Хорошо тому, у кого есть кинжал. И плохо если его не окажется… в нужное время." Так вот запасаться кинжалом нужно заранее, а когда он понадобиться, то надо будет достать и пользоваться.
19 марта 2009 в 0:04
ну почему – далеких?
в туалете неплохо распечатки просматривать
19 марта 2009 в 0:04
Пригодится и не раз! Просто с реальными задачами не сталкивался. Зайди на сайты посвященные ACM ICPC и ты увидишь что в каждой задаче математическая база, причем серьезная.
19 марта 2009 в 0:03
Изучение математики формирует своеобразный метод мышления, который позволяет очень эффективно решать задачи (не писать программы, а именно решать задачи), а также позволяет видеть многие ошибки в предложенных решениях.
Весь фокус в том, что у программиста рабочий инструмент не компьютер, а голова. А компьютер ему по сути и не нужен. Например я, решение своей последней проблемы нашел в филармонии, слушая девятую симфонию Шуберта
19 марта 2009 в 0:03
нужна, но я предметам по програмированию больше гораздо внимания уделяю..
19 марта 2009 в 0:03
аффтар нуп и апазорился ^_^
19 марта 2009 в 0:03
>> Например я, решение своей последней проблемы нашел в филармонии, слушая девятую симфонию Шуберта
Кстати золотые слова – "наваждение" часто приходит в самых "далеких" от математики местах…
19 марта 2009 в 0:02
нужна-нужна…это аксиома…