Видео
Статьи
23 прочтения · 2 недели назад
Программирование на языке Python. Обзор канала programmer's notes
На моём канале уже 400 с лишним материалов: статей, заметок, видео. Множество подборок. Ну пора уже сделать такой обзор, который позволил бы легче ориентироваться в материале. Подборки, которые перечислены ниже, содержат все материала канала. Некоторые материалы могут входить в несколько подборок. Например материал о модуле mmap будет входить в подборки Стандартные библиотеки, Управление файлами и Многозадачность. Некоторые же подборки входят в другие подборки целиком. Например, подбрка о библиотеке os будет целиком входить в поборку о стандартных библиотеках...
17 прочтений · 2 недели назад
Программирование на языке Python. Решение нелинейного уравнения f(x)=0 методом секущих
Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео. Решение нелинейного уравнения методом секущих на Python Ну и крайний (не послений) метод решения нелинейных уравнений. Это метод секущих. Метод секущих или метод хорд, несколько напоминает метод Ньютона. Но основывается не на производной. Секущая должна всё по замыслу всё ближе и ближе "подбираться" к сикомой точке. Основная формула этого метода представлена на рисунке 1...
18 прочтений · 2 недели назад
Программирование на языке python. Решение нелинейного уравнения f(x)=0 методом Ньютона
Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео. Решение нелинейных уравнений методом Ньютона на Python Сегодня о методе Ньютона по вычислению корней уравнений типа f(x)=0. В прошлой статье по этой тематике уже познакомились с методом перебора и методом деления отрезка пополам. Мы будем использовать метод Ньютона в купе с методом перебора. С помощью последнего метода мы найдём отрезки с предполагаемыми корнями, а методом Ньютона получим значения корней высокой точности...
17 прочтений · 2 недели назад
Программирование на языке python. Решение нелинейного уравнения f(x)=0 методом простого перебора и методом половинного деления
Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео. Поиск корней уравнения методом перебора и методом деления пополам на Python Общие положения Вообще уравнения типа f(x)=0 довольно типичное. При линейном уравнении, уравнениях второй и третьей степени решение можно выразить аналитически, а вот дальше уже не факт. Может удастся решить аналитически, а может нет. Чаще всего нет. Кроме того, функция ведь не обязательно должна выражаться многочленом...
14 прочтений · 3 недели назад
Сегодня не большой пост выходного дня на моём канале. Есть целый набор типичных ошибок, которые совершают даже опытные программисты. Ошибка это ведь тоже своего рода философия, точнее отражение философии программиста. Одной из таких известных ошибок является ошибка на единицу. Ошибка может происходить и в одну и в другую сторону. Довольно часто мы видим сообщение, что индекс вышел за границу массива. При чём, когда начинаешь разбираться, то как раз выясняется, что ошибка произошла, чаще всего, именно на единицу. Конечно, проблема с единицей не сводится к массивам. Проведите такой эксперимент. Возьмите язык, который вы знаете, на котором вы работали. И цикл for, в котором обычно указываются пределы изменения параметра цикла. И попробуйте точно сказать, какое значение будет у параметра цикла, когда цикл закончит свою работу. Вот не факт, что вы угадаете. Суть опять же не в том, сколько раз было выполнено тело цикла. Суть в том, какое значение будет у параметра цикла по выходу. А возьмите, например, строку в языке Си. Там на конце должен стоять байт, равный нулю. Попробуйте написать сами основные функции работы со строками: копирование, конкатенация, вставка и т.п. и не сделайте сходу ошибку на единицу. И так можно приводить большое количество задач, где всё время приходится гадать: нужно n или n+1 (n-1). Мне могут сказать: "Ну это же психология программиста. Зачем ему запоминать, если истину можно установить в течении минуты?". Причина ошибки как раз в этом. Ну иногда просто лень писать что-то для проверки, а написанный код программе, вроде бы работает правильно. Ну, а дальше, дальше "неожиданно" при определённом наборе входным параметров программа будет давать ошибочный результат. Что это всё значит? В конце концов не смертельно, если в программе появляется ошибка. Потом она всё равно исправляется. Но это так для меня как "философа" от программирования. А для производителей программного обеспечения это всё время и деньги. Суть в том, что особенностью программирования является то, что человек, даже очень способный программист, не всегда может просчитать все варианты в собственном же алгоритме. А проверка фрагментов своего кода, которую он делает , часто не охватывает все варианты. Вот откуда тяга многих программистов, а чаще менеджеров от программирования, найти правильную методику организации "правильного" программирования и заставить разработчиков следовать этой методике. Но вот тут появляется искусственный интеллект и всё начинает рушиться. Да, никто (почти) этого ещё не замечает, но дайте только срок и все это увидят. Если вы меня спросите, как я к этому отношусь, то точного ответа я дать не могу. Уходит эпоха, целая эпоха программирования, которую я видел, в которой я участвовал и это очень печально. Но с другой стороны, и это удивительно, мы возвращаемся в эпоху до 1980-х годов, когда программистов было не много, когда они творили в своё удовольствие. Да писали программы и хорошие программы, но там было много творчества и очень мало насилия над этим творчеством. И по законам диалектики всё опять повторится. И это меня радует. Вот такие не очень последовательные мысли у меня возникли сегодня, когда я вспомнил классическую "ошибку на единицу". Философская подборка Канал о программировании на Python
19 прочтений · 3 недели назад
Программирование на языке Python. Модуль mmap, анонимная область и многозадачность
Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео. Обмен данными между процессами с использованием mmap. Анонимная область памяти Материал сегодняшней статьи посвящён использованию mmap во взаимодействии между процессами. Придётся вспомнить многозадачность и os.fork(). В противном случае материал будет не понятен. Вот эти мои материалы вам в помощь: видео, статья. Задача данной статьи следующая: использовать механизм анонимной области памяти для взаимодействия родительского и дочернего процессов...
21 прочтение · 3 недели назад
Программирование на Python. Модуль mmap, прямое отображение в память
Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео. Прямое отображение в памяти в программах на python с использованием модуля mmap Честно говоря упустил эту технологию, даже не подумал про неё в отношении Python. Хотя пользовался возможностями mmap на C и ассемблере. Но там просто системные функции используются. А оказывается в Python есть такой модуль и можно использовать её в своих целях. И так о чём же идёт речь...
27 прочтений · 3 недели назад
Числовые алгоритмы на языке Python. Вычисление производных функций
Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео. Вычисление производной на Python В отличие от интеграла производная вычисляется в конкретной точке. Обычно вычисляют среднее от правой и левой производной (см. рисунок 1). По определению нужно взять приращение функции на данном промежутке и разделить на приращение аргумента. Но чтобы быть более точным мы берём среднюю производных с промежутком до данной точки и промежутком после...
21 прочтение · 3 недели назад
Программирование на языке Python. Числовые алгоритмы. Вычисление определённых интегралов методом парабол
Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео. Вычисление интеграла методом парабол (Симпсона) Сегодня маленькая статья в продолжении вопроса вычисления определённых интегралов. Суть метода парабол сводится к более сложной фор муле значение функции на промежутку. Симпсон вывел приближённую формулу вычисление интеграла на промежутке из предположения, что функция на промежутке является параболой...
19 прочтений · 3 недели назад
Программирование на языке Python. Числовые алгоритмы. Вычисление определённых интегралов
Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео. Вычисление определённых алгоритмов на Python Численные методы - один разделов математики. Когда-то я его изучал и мне он казался таким скучным. Но потом появились компьютеры и не бумажное программирование и оказалось, что это весьма интересно. Занимался когда-то численным решением нелинейных уравнений. Но это было давно. В сегодня определённые интегралы...
11 прочтений · 4 недели назад
Программирование на языке Python. Поиск подстроки в строке методом Бойера-Мура
Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео. Метод Бойера-Мура на Python Сегодня рассматриваем метод Бойера-Мура. Хороший метод и не слишком сложный. Вообще основные попытки улучшить (оптимизировать) поиск подстроки в строке, это поиск алгоритма позволяющего передвигаться по строке быстрее, увеличивать шаг. И данный подход не исключение. Мне лично решение нравится...
14 прочтений · 1 месяц назад
Программирование на языке Python. Поиск подстроки в строке. Ну совсем забыли про модуль re
Доброго времени суток, читатели, зрители моего канала programmer's notes. Не забывайте подписываться и писать свои комментарии к моим статьям и видео. Поиск подстроки в строке с помощью регулярных выражений Сегодня в честь субботы совсем маленькая статья. Совсем забыли про регулярные выражения и библиотеку re. С другой стороны мы об этом уже писали. Но повторение не помешает, тем более, что мы говорим не общих регулярных выражениях, а о конкретной задаче поиска одной строки в другой. Удобнее всего использовать итератор re...