Библиотека knigago >> Науки естественные >> Математика >> Простая математика для простых программистов

Рик Гаско - Простая математика для простых программистов

Простая математика для простых программистов
Книга - Простая математика для простых программистов.  Рик Гаско  - прочитать полностью в библиотеке КнигаГо
Название:
Простая математика для простых программистов
Рик Гаско

Жанр:

Математика, Программирование: прочее

Изадано в серии:

Программирование

Издательство:

СОЛОН-Пресс

Год издания:

ISBN:

неизвестно

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Простая математика для простых программистов"

Книга "Простая математика" в первую очередь для программистов, но не только. Для программистов в книге дано самое необходимое, то, без чего программисту будет трудно. Материал представлен в самом простом и правильном для немедленного употребления программистом изложении. Настоящее применение математики программистом начинается тогда, когда он, имея перед собой задачу, сам, без ансамбля, догадывается, какую именно отрасль математики надо для такого случая вспомнить , какой конкретно метод из неё взять и как его запрограммировать. И всё это сам, без посторонней помощи. Цель книги не в том, чтобы научить программировать математические алгоритмы. Цель в том, чтобы взять задачу и понять какой математический алгоритм к ней применить. Прочитайте и применяйте. Для не программиста эта книга короткое введение в основы высшей математики. Особое внимание уделено базовым понятиям теории вероятностей.

Читаем онлайн "Простая математика для простых программистов". [Страница - 3]

и предпочёл несколько,
много раз повторить основы. Это не потому, что я ничего больше не знаю.
Это не я такой, это жизнь такая.
О чём эта книга?
Это очевидно из названия. Книга эта о математике для программистов.
Надо только уточнить, что такое простая математика и кто такие
простые программисты. Но сначала о том, как вообще связана
математика с программированием.
Бывает, что программисту выдают какой­то детально расписанный
математический алгоритм и требуют запрограммировать его, ни на шаг не
отступая от задания. Это скучно, неинтересно и, главное, никакого
отношения к математике не имеет. С тем же успехом программисту могли
8

бы выдать и детально расписанный алгоритм из какой­нибудь другой
области знания ­ бухгалтерии, астрономии, игры в очко. В большинстве
программ приходится хоть что­то считать. Должен заметить, что
программист, которому выдают детализированный алгоритм, обычно
получает не очень много денег ­ деньги у него отнимает тот, кто алгоритм
для него детализирует.
Бывает, что программисту выдают не вполне детализированное задание. К
примеру, там может быть требование «вычислить расстояние между
точками» или «найти минимум на интервале». Предполагается, что
программист понимает, о чём идёт речь, как минимум, и умеет это сделать,
как максимум. Такой программист ценится выше.
­ Граф стоит больше! © Собака на сене
Настоящее применение математики программистом начинается тогда,
когда он, имея перед собой задачу, сам, без ансамбля, догадывается, какую
именно отрасль математики надо для такого случая вспомнить, какой
конкретно метод из неё взять и как его запрограммировать. И всё это сам,
без посторонней помощи.
Основная проблема тривиальна, банальна и очевидна ­ если вы чего­то (из
математики) не знаете, то не сможете этого применить. Что хуже, вы даже
не догадаетесь, чего именно вы не знаете и не полезете искать это в
Интернете. Нет, всё ещё хуже ­ вы даже не догадаетесь, что вы чего­то не
знаете и вам надо что­то искать. Ещё раз и другими словами. Цель моя не в
том, чтобы научить программировать математические алгоритмы. Цель в
том, чтобы взять задачу и понять какой математический алгоритм к ней
применить.
Ещё бывает просто нужная математика, сама по себе, настолько нужная,
что адекватный программист даже её не замечает. Ведь никто не требует
от программиста знать таблицу умножения. Он просто должен знать её и
всё! Точно также программист должен уметь перевести из одной системы
счисления в другую (FF =255 ) и знать основы математической логики,
кажется, это называется исчисление предикатов ­ заменить условие
(((x>=0) and (y= 1 t h e n b e g i n
result:=1;
f o r k:=2 t o n do
r e s u l t : = r e s u l t * k;
end;
end;
{
begin

}

}

ChDir(ExtractFilePath(ParamStr(0)));
A s s i g n F i l e ( F, ' f a c t . f a c t ' ) ;
R e W r i t e ( F, 1 ) ;
numOf:=8;
B l o c k W r i t e ( F, numOf, 4 ) ;
f o r i : = 1 t o numOf do b e g i n
rec.arg:=i;
rec.fact:=Factorial(i);
B l o c k W r i t e ( F, r e c , S i z e O f ( r e c ) ) ;
end;
CloseFile(F);
end;

Комментарии.
Факториал
принципиально
не
запрограммирован
рекурсивно. Жутковатая строчка после основного begin делает каталог, из
которого запущена программа, текущим. То есть, именно туда и будет
записан наш файл. Оформите эту строку в виде процедуры, не пожалеете,
пригодится ещё много раз.
Итак, мы записали файл. Теперь сотрудник, который нас раздражает ­
праативный, ухаади! ­ его читает и выводит наши факториалы на экран,
вот так, текст в заголовке МП №1 расшифровывается как
Математическая Программа №1:

28

SEIKi
1/131072
2/393219
0/24
5/393216
720 / 330301447
0 / 40320
0 / 40320
0/40320

1 CIIMIIjj
После чего так называемый коллега выкатывает нам не бочку варенья, а
бочку претензий. Мы уверены, что у нас всё правильно, он уверен, что
правильно всё у него, а у нас наоборот. Каждый предлагает другому
посмотреть в его код и убедиться, насколько там всё гениально и даже
правильно. Но кто же будет смотреть в чужую программу, тут бы в своей
разобраться. В конце концов решают сойтись на относительно
нейтральной территории и заглянуть в файл. Что же там записалось?
Кстати, правильный программист немедленно заметит, что количество
факториалов совпадает с исходным, их ровно восемь.
Если вы очень серьёзный программист, для просмотра файла можно
использовать какой­нибудь серьёзный шестнадцатеричный редактор. Если
вы программист вроде меня, то можно применить FAR, или, того хуже,
Total --">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.