Перейти к содержимому

Фотография

Реально ли выучить программированиеесли плохо знаешь математику


  • Закрытая тема Тема закрыта
Сообщений в теме: 246

#141
DEN_PR

DEN_PR
  • Частый гость
  • 66 сообщений
Не скажу, что прям вест из себя профессиональный программер, но про отличное знание математики - сказки имхо...

Если вообще нифига не врубаешься, то делать конечно нечего, так как скорее всего и логика слабовата, а если нормально(на среднем уровне), то все шансы и...

Флаг в руки !!! =D
  • 0

#142
v04bvs

v04bvs
  • В доску свой
  • 2 062 сообщений


JavaScript это Lisp с фигурными скобками, к С++ от не имеет отношения никакого вообще. Абсолютно.



Да полно-те вам! По крайней мере так же не имеет отношения к Лиспу как к плюсам.
А то что в нем есть некоторая функциональность ... дык оно даже в дотнете есть ныне ...

Прикол в том, что когда нетскейп нанял людей делать джаваскрипт, нанятые люди оказались умными и лисп любили. Но понимали, что скобки в продакшен не пойдут, тогда был моден сишный синтаксис. Поэтому сделали лисп с сишным синтаксисом. Погуглите по истории джаваскрипта. Джаваскриптная объектная модель, кстати, списана с клоза (с очевидными упрощениями, монстры никому не нужны).

PS: Просить примера на Javascript показывающего аналоги лисповым метапротоколу, клосу и макрам даже не буду :smoke:

не надо, я коммон лисп знаю плохо, больше ским люблю. А там, слава богу, нет клоза и макры нормальные )

Кстати в чём проблема с макрами? сделал текст и eval его. В джаваскрипте нет раздельной компиляции, поэтому один в один. Оно, конечно, не так красиво, как манипулировать нормальным AST, но результаты будет давать аналогичные.

PS найдите десять отличий (комбинатор фиксированной точки):

function Y(le) {
	return function (f) {
		return f(f);
	}(function (f) {
		return le(function (x) {
			return f(f)(x);
		});
	});
}

(define Y
  (lambda (le)
	((lambda (f) (f f))
	 (lambda (f)
	   (le (lambda (x) ((f f) x)))))))

PPS http://www.crockford...cript/little.js

Сообщение отредактировал v04bvs: 09.11.2008, 21:09:19

  • 0

#143
Gloomy

Gloomy
  • Свой человек
  • 861 сообщений
И дёрнул меня черт с коментами вылезти :lol:

>>>JavaScript это Lisp с фигурными скобками, к С++ от не имеет отношения никакого вообще. Абсолютно.

>>Да полно-те вам! По крайней мере так же не имеет отношения к Лиспу как к плюсам.
>>А то что в нем есть некоторая функциональность ... дык оно даже в дотнете есть ныне ...

ну и

PS: Просить примера на Javascript показывающего аналоги лисповым метапротоколу, клосу и макрам даже не буду :)

не надо, я коммон лисп знаю плохо, больше ским люблю. А там, слава богу, нет клоза и макры нормальные )

Кажись я допёр. Я не называю схему лиcпом - а ты таки да. То есть если фраза звучала бы как "JavaScript это Scheme с фигурными скобками .." - я бы наверное и не вылез ;)
Ну посуди сам - Lisp без metaprotocol-а, CLOS-а, AST Macro - это уже не Лисп! Так ... Scheme какой нить :laugh: (стёб)

Кстати в чём проблема с макрами?

После Y-combinator на js мне надо бы по-осторожничать ... не то чтобы я считал это не возможным, но все же кольнуло своей простотой :shy: С другой стороны - этого мало. Вон пол года назад один-из-жгущих-на-лоре на спор сделал то же но на чистейшем Питоне ... и что, Питон - тоже Лисп ?-)
Ладно хватит disclaimers-ов :-/ В любом талмуде о схеме есть пример макры реверс-ордер, если есть пример таких макро на js - покажи. Для простоты чтобы оно всего лишь понимало ситаксис вида (+ a b) вместо (a + b).
Если покажешь - официально признаю себя лопухнувшимся и иду учить js подробнее :D
  • 0

#144
v04bvs

v04bvs
  • В доску свой
  • 2 062 сообщений

Я не называю схему лиcпом - а ты таки да.

Конечно да. Лисп это вообще не язык, это, как минимум, множество языков, по-моему :rolleyes: Включая CL, Scheme, Mulisp, Elisp, Autolisp и прочее.

Ладно хватит disclaimers-ов :spy: В любом талмуде о схеме есть пример макры реверс-ордер, если есть пример таких макро на js - покажи. Для простоты чтобы оно всего лишь понимало ситаксис вида (+ a b) вместо (a + b).
Если покажешь - официально признаю себя лопухнувшимся и иду учить js подробнее :-)

Гм, такое не покажу. Для этого надо нормальный парсер писать, а мне лень. Псевдокодом могу попробовать.

function reverse-order(str) {
  var lst = parse_list(str); // lst сейчас массив, например "(+ a (- b 2) (* 4 3))" -> ["+", "a", ["-", "b", "2"], ["*", "4", "3"]]
  function reverse-ast(ast) {
	if (typeof ast == "string") {
		return ast;
	}
	var operation = reverse-ast(ast[0]);
	var rv = "(";
	for (var i = 1; i < ast.length; ++i) {
	  rv += reverse-ast(ast[i]);
	  if (i < ast.length - 1) {
		rv += operation;
	  }
	}
	rv += ")";
	return rv;
  }
  return reverse-ast(lst);
}

var x = eval(reverse-order("(+ a (- b 2) (* 4 3))"));
===
var x = eval("a+(b-2)+(4*3)");
===
var x = a + (b - 2) + (4 * 3);

  • 0

#145
antibiotic

antibiotic
  • Случайный прохожий
  • 4 сообщений
У меня в школе было туговато с математикой, щас по работе пришлось писать скрипты и ничего получаетца, главное чтоб под рукой инет был и справочник. :D
  • 0

#146
tony_brewerio

tony_brewerio
  • Гость
  • 31 сообщений
Чтобы "выучить" программирование, даже английский знать не обязательно.
Проблемы начнутся, когда программа станет жестоко тормозить ( из-за неоптимальных/надуманных алгоритмов ).

В большистве случаев, нужна не математика и прочие, а грамотно составленный план работ, и способность программиста четко следовать в разработке этому плану ( без отсебятины ).
  • 0

#147
dzid

dzid
  • Свой человек
  • 939 сообщений
Без математики из человека получается script kiddie, а вовсе не программист
  • 0

#148
yedyge

yedyge
  • Свой человек
  • 879 сообщений
может быть таких нубов заставлять пройти ceebot4?
там они и поймут что это такое и надо ли оно.
  • 0

#149
svd79

svd79
  • Завсегдатай
  • 103 сообщений

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

на самом деле я бы даже сравнил с написанием стихов, хорошая прога так же легко читаеться и компилиться как хорошие понятные стихи :rolleyes:
  • 0

#150
Zulkar

Zulkar

    Читатель

  • В доску свой
  • 3 243 сообщений

Есть разные мнения о возможности мышления вне языка, но я убежден, что
аналитическое мышление того типа, который нужен в компьютерном
программировании, тесно связано с языковыми навыками. Я не думаю, что
является случайностью то, что многие из знакомых мне лучших программистов
имеют дипломы по истории, филологии и схожим наукам. Также не является
случайностью то, что некоторые из виденных мной худших программ были
написаны инженерами, физиками и математиками, затратившими в университете
массу энергии на то, чтобы держаться как можно дальше от занятий по языку и
литературе.
Сущность заключается в том, что математическая подготовка почти не нужна в
компьютерном программировании. Тот тип организационного мастерства и
аналитических способностей, который нужен для программирования, связан
полностью с гуманитарными науками. Логика, например, преподавалась на
философском факультете, когда я был в университете. Процесс, используемый при
проектировании и написании компьютерных программ, почти полностью
идентичен тому, который используется, чтобы сочинять и писать книги. Процесс
программирования совсем не связан с теми процессами, которые используются для
решения математических уравнений.
Здесь я делаю различие между информатикой ( computer science) —
математическим анализом компьютерных программ — и программированием или
разработкой программного обеспечения — дисциплиной, интересующейся
написанием компьютерных программ. Программирование требует
организационных способностей и языковой подготовки, а не абстрактного
мышления, необходимого для занятий математическим анализом. (В университете
меня заставили проходить год на лекции по математическому анализу, но я
никогда из него ничего не использовал ни на занятиях по информатике, хотя для
них матанализ был необходимым условием, ни в реальной жизни).

© Аллен Голуб. Веревка достаточной длины, чтобы выстрелить себе в ногу.
  • 0

#151
Visual1

Visual1
  • В доску свой
  • 1 198 сообщений
Не знать математику не стыдно (среди программистов по настоящему ее никто не знает), стыдно этим незнанием гордиться. Предлагаю уважаемым программистам, а также просто любителям и знатокам математики, решить следующую задачу (необходимый объем знаний: достаточно курса средней школы).

Задача. Найти решение системы из двух уравнений с двумя неизвестными (знак ^ здесь означает возведение в степень):

x^y = 2;
y = x^x.


P.S. Решением считается не компьютерная программа с реализацией в коде какого-нибудь итеративного метода. Программу вообще не присылайте. Найдите именно математическое решение, как это делается в средней школе. Причем полное решение, а не просто ответ в виде "x = 1,..." (понятно с первого взгляда, что значение х больше 1, но меньше 2).

Сообщение отредактировал Visual1: 07.12.2008, 20:54:32

  • 0

#152
X{pert

X{pert
  • Гость
  • 16 сообщений
ну как я считаю
если чел шарит в математике - а точнее в уравнениях и т.п видит сокращеные формулы иль как там они назывались
то в программирование проще ориентироваться будет!
т.к чел на поставленой задче будет сразу видеть код
  • 0

#153
special_team

special_team
  • Постоялец
  • 313 сообщений
Господа программисты! Извините за оффтоп. Но чтобы не созлавать новую тему которая решиться через пару ответов, напишу здесь.
1)Как называется среда программирования дл дельфи.Я правилно понял, что среда? То есть где будет набираться код+компилятор. Распростраяется ли она бесплатно. Если да, то где ее можно скачать.
2)Такой же вопрос по с++.

Меня попросили запостить это, так как парнишке нужно. Надеюсь на ваше понимание=))
  • 0

#154
Zulkar

Zulkar

    Читатель

  • В доску свой
  • 3 243 сообщений

1)Как называется среда программирования дл дельфи.Я правилно понял, что среда? То есть где будет набираться код+компилятор. Распространяется ли она бесплатно. Если да, то где ее можно скачать.

Эммм не понял... Вообще среда называется Дельфи. Это среда программирования для языка ObjectPascal Если бесплатно - то FreePascal может быть? На дельфи не писал просто, очень вскользь.

2)Такой же вопрос по с++.

Студию экспресс например. Скачать ее можно например здесь.

Сообщение отредактировал Zulkar: 11.12.2008, 14:59:51

  • 0

#155
Кими

Кими
  • В доску свой
  • 2 252 сообщений
где найти ... конечно на официальном сайте разработчиков...

Delphi Trial and Free Versions

C++Builder Trial and Free Versions


кстати среда delphi бывает еще и для php ... Delphi for PHP Trial and Free Versions


можно еще и тут глянуть

Сообщение отредактировал Кими: 11.12.2008, 17:05:18

  • 0

#156
special_team

special_team
  • Постоялец
  • 313 сообщений
Всем спасибо за ответы=)))

Я там запутался, надо скачивать.

Turbo C++ 2006 Explorer

Turbo Delphi 2006 Explorer

??

Спасибо.
  • 0

#157
yedyge

yedyge
  • Свой человек
  • 879 сообщений
(http://www.realthinclient.eu/borland/)
http://www.realthinc.../prereqs_en.zip одно, нужное для обоих
http://www.realthinc...turbocpp_en.exe
http://www.realthinc...bodelphi_en.exe

отдельное внимание уделите лицензированию - оно бесплатное, но "не через перед".
http://cc.codegear.c...e.aspx?id=24724
http://cc.codegear.c...e.aspx?id=24722

Сообщение отредактировал yedyge: 16.12.2008, 13:14:44

  • 0

#158
yedyge

yedyge
  • Свой человек
  • 879 сообщений

Не знать математику не стыдно (среди программистов по настоящему ее никто не знает), стыдно этим незнанием гордиться. Предлагаю уважаемым программистам, а также просто любителям и знатокам математики, решить следующую задачу (необходимый объем знаний: достаточно курса средней школы).

Задача. Найти решение системы из двух уравнений с двумя неизвестными (знак ^ здесь означает возведение в степень):

x^y = 2;
y = x^x.


P.S. Решением считается не компьютерная программа с реализацией в коде какого-нибудь итеративного метода. Программу вообще не присылайте. Найдите именно математическое решение, как это делается в средней школе. Причем полное решение, а не просто ответ в виде "x = 1,..." (понятно с первого взгляда, что значение х больше 1, но меньше 2).

колись, что делать с x=logx(logx2) :-)
  • 0

#159
gerr Shwainer

gerr Shwainer
  • Частый гость
  • 71 сообщений
чтобы стать программистом главное не голова, (голова нужна в жизни нужна палюбому), а крепкая задница. В смысле усидчивость и дикий интерес к творчествоку созиданию
  • 0

#160
gerr Shwainer

gerr Shwainer
  • Частый гость
  • 71 сообщений
Никого не слушайте, понты это все! за 15 лет опыта программирования глубокие знания математики нафиг не пригодились. Если тебе нужна наваять програмулину где без математики не обойтись, то это не твоя забота. Тот кто заказывает прогу пусть на бумажке нарисует что хочет, а мы по этой ТЗухе прогу завсегда закодим, нетпроблем.
А вот знание английского да, это очень нужно. Хотя не критично.
Какие нах матрицы, какая нафиг дискретная математика, да не нужно это все. Ну может один разок, если какаянить кафедра математики закажет программулину, да и то пусть внятный ТЗ дают, наваяем.
Не нужно никаких глубоких знаний ни математики, ни алхимии. Главное нужна задница железная и честолюбие типа а я вот смогу.
  • 0


Количество пользователей, читающих эту тему: 1

пользователей: 0, неизвестных прохожих: 1, скрытых пользователей: 0

Размещение рекламы на сайте     Предложения о сотрудничестве     Служба поддержки пользователей

© 2011-2022 vse.kz. При любом использовании материалов Форума ссылка на vse.kz обязательна.